(function(){

if (!window.qx) window.qx = {};

qx.$$start = new Date();
  
if (!qx.$$environment) qx.$$environment = {};
var envinfo = {"qx.application":"track.Application","qx.debug":false,"qx.debug.databinding":false,"qx.debug.dispose":false,"qx.optimization.basecalls":true,"qx.optimization.comments":true,"qx.optimization.privates":true,"qx.optimization.strings":true,"qx.optimization.variables":true,"qx.optimization.variants":true,"qx.revision":"7076M","qx.theme":"track.theme.Theme","qx.version":"1.6"};
for (var k in envinfo) qx.$$environment[k] = envinfo[k];

if (!qx.$$libraries) qx.$$libraries = {};
var libinfo = {"__out__":{"sourceUri":"script"},"qx":{"resourceUri":"resource","sourceUri":"script","version":"1.6"},"track":{"resourceUri":"resource","sourceUri":"script","version":"trunk"}};
for (var k in libinfo) qx.$$libraries[k] = libinfo[k];

qx.$$resources = {};
qx.$$translations = {"C":null,"de":null,"en":null,"fr":null};
qx.$$locales = {"C":null,"de":null,"en":null,"fr":null};
qx.$$packageData = {};

qx.$$loader = {
  parts : {"boot":[0]},
  packages : {"0":{"uris":["__out__:track.9f4b28823298.js"]}},
  urisBefore : [],
  cssBefore : [],
  boot : "boot",
  closureParts : {},
  bootIsInline : true,
  addNoCacheParam : false,
  
  decodeUris : function(compressedUris)
  {
    var libs = qx.$$libraries;
    var uris = [];
    for (var i=0; i<compressedUris.length; i++)
    {
      var uri = compressedUris[i].split(":");
      var euri;
      if (uri.length==2 && uri[0] in libs) {
        var prefix = libs[uri[0]].sourceUri;
        euri = prefix + "/" + uri[1];
      } else {
        euri = compressedUris[i];
      }
      if (qx.$$loader.addNoCacheParam) {
        euri += "?nocache=" + Math.random();
      }
      
      uris.push(euri);
    }
    return uris;      
  }
};  

function loadScript(uri, callback) {
  var elem = document.createElement("script");
  elem.charset = "utf-8";
  elem.src = uri;
  elem.onreadystatechange = elem.onload = function() {
    if (!this.readyState || this.readyState == "loaded" || this.readyState == "complete") {
      elem.onreadystatechange = elem.onload = null;
      callback();
    }
  };
  var head = document.getElementsByTagName("head")[0];
  head.appendChild(elem);
}

function loadCss(uri) {
  var elem = document.createElement("link");
  elem.rel = "stylesheet";
  elem.type= "text/css";
  elem.href= uri;
  var head = document.getElementsByTagName("head")[0];
  head.appendChild(elem);
}

var isWebkit = /AppleWebKit\/([^ ]+)/.test(navigator.userAgent);

function loadScriptList(list, callback) {
  if (list.length == 0) {
    callback();
    return;
  }
  var item = list.shift();
  loadScript(item,  function() {
    if (isWebkit) {
      // force async, else Safari fails with a "maximum recursion depth exceeded"
      window.setTimeout(function() {
        loadScriptList(list, callback);
      }, 0);
    } else {
      loadScriptList(list, callback);
    }
  });
}

var fireContentLoadedEvent = function() {
  qx.$$domReady = true;
  document.removeEventListener('DOMContentLoaded', fireContentLoadedEvent, false);
};
if (document.addEventListener) {
  document.addEventListener('DOMContentLoaded', fireContentLoadedEvent, false);
}

qx.$$loader.importPackageData = function (dataMap, callback) {
  if (dataMap["resources"]){
    var resMap = dataMap["resources"];
    for (var k in resMap) qx.$$resources[k] = resMap[k];
  }
  if (dataMap["locales"]){
    var locMap = dataMap["locales"];
    var qxlocs = qx.$$locales;
    for (var lang in locMap){
      if (!qxlocs[lang]) qxlocs[lang] = locMap[lang];
      else 
        for (var k in locMap[lang]) qxlocs[lang][k] = locMap[lang][k];
    }
  }
  if (dataMap["translations"]){
    var trMap   = dataMap["translations"];
    var qxtrans = qx.$$translations;
    for (var lang in trMap){
      if (!qxtrans[lang]) qxtrans[lang] = trMap[lang];
      else 
        for (var k in trMap[lang]) qxtrans[lang][k] = trMap[lang][k];
    }
  }
  if (callback){
    callback(dataMap);
  }
}

qx.$$loader.signalStartup = function () 
{
  qx.$$loader.scriptLoaded = true;
  if (window.qx && qx.event && qx.event.handler && qx.event.handler.Application) {
    qx.event.handler.Application.onScriptLoaded();
    qx.$$loader.applicationHandlerReady = true; 
  } else {
    qx.$$loader.applicationHandlerReady = false;
  }
}

// Load all stuff
qx.$$loader.init = function(){
  var l=qx.$$loader;
  if (l.cssBefore.length>0) {
    for (var i=0, m=l.cssBefore.length; i<m; i++) {
      loadCss(l.cssBefore[i]);
    }
  }
  if (l.urisBefore.length>0){
    loadScriptList(l.urisBefore, function(){
      l.initUris();
    });
  } else {
    l.initUris();
  }
}

// Load qooxdoo boot stuff
qx.$$loader.initUris = function(){
  var l=qx.$$loader;
  var bootPackageHash=l.parts[l.boot][0];
  if (l.bootIsInline){
    l.importPackageData(qx.$$packageData[bootPackageHash]);
    l.signalStartup();
  } else {
    loadScriptList(l.decodeUris(l.packages[l.parts[l.boot][0]].uris), function(){
      // Opera needs this extra time to parse the scripts
      window.setTimeout(function(){
        l.importPackageData(qx.$$packageData[bootPackageHash] || {});
        l.signalStartup();
      }, 0);
    });
  }
}
})();

qx.$$packageData['0']={"locales":{"C":{"alternateQuotationEnd":"’","alternateQuotationStart":"‘","cldr_am":"AM","cldr_date_format_full":"EEEE, MMMM d, y","cldr_date_format_long":"MMMM d, y","cldr_date_format_medium":"MMM d, y","cldr_date_format_short":"M/d/yy","cldr_date_time_format_EEEd":"d EEE","cldr_date_time_format_Hm":"HH:mm","cldr_date_time_format_Hms":"HH:mm:ss","cldr_date_time_format_M":"L","cldr_date_time_format_MEd":"E, M/d","cldr_date_time_format_MMM":"LLL","cldr_date_time_format_MMMEd":"E, MMM d","cldr_date_time_format_MMMd":"MMM d","cldr_date_time_format_Md":"M/d","cldr_date_time_format_d":"d","cldr_date_time_format_hm":"h:mm a","cldr_date_time_format_hms":"h:mm:ss a","cldr_date_time_format_ms":"mm:ss","cldr_date_time_format_y":"y","cldr_date_time_format_yM":"M/y","cldr_date_time_format_yMEd":"EEE, M/d/y","cldr_date_time_format_yMMM":"MMM y","cldr_date_time_format_yMMMEd":"EEE, MMM d, y","cldr_date_time_format_yMMMd":"MMM d, y","cldr_date_time_format_yMd":"M/d/y","cldr_date_time_format_yQ":"Q y","cldr_date_time_format_yQQQ":"QQQ y","cldr_day_format_abbreviated_fri":"Fri","cldr_day_format_abbreviated_mon":"Mon","cldr_day_format_abbreviated_sat":"Sat","cldr_day_format_abbreviated_sun":"Sun","cldr_day_format_abbreviated_thu":"Thu","cldr_day_format_abbreviated_tue":"Tue","cldr_day_format_abbreviated_wed":"Wed","cldr_day_format_wide_fri":"Friday","cldr_day_format_wide_mon":"Monday","cldr_day_format_wide_sat":"Saturday","cldr_day_format_wide_sun":"Sunday","cldr_day_format_wide_thu":"Thursday","cldr_day_format_wide_tue":"Tuesday","cldr_day_format_wide_wed":"Wednesday","cldr_day_stand-alone_narrow_fri":"F","cldr_day_stand-alone_narrow_mon":"M","cldr_day_stand-alone_narrow_sat":"S","cldr_day_stand-alone_narrow_sun":"S","cldr_day_stand-alone_narrow_thu":"T","cldr_day_stand-alone_narrow_tue":"T","cldr_day_stand-alone_narrow_wed":"W","cldr_month_format_abbreviated_1":"Jan","cldr_month_format_abbreviated_10":"Oct","cldr_month_format_abbreviated_11":"Nov","cldr_month_format_abbreviated_12":"Dec","cldr_month_format_abbreviated_2":"Feb","cldr_month_format_abbreviated_3":"Mar","cldr_month_format_abbreviated_4":"Apr","cldr_month_format_abbreviated_5":"May","cldr_month_format_abbreviated_6":"Jun","cldr_month_format_abbreviated_7":"Jul","cldr_month_format_abbreviated_8":"Aug","cldr_month_format_abbreviated_9":"Sep","cldr_month_format_wide_1":"January","cldr_month_format_wide_10":"October","cldr_month_format_wide_11":"November","cldr_month_format_wide_12":"December","cldr_month_format_wide_2":"February","cldr_month_format_wide_3":"March","cldr_month_format_wide_4":"April","cldr_month_format_wide_5":"May","cldr_month_format_wide_6":"June","cldr_month_format_wide_7":"July","cldr_month_format_wide_8":"August","cldr_month_format_wide_9":"September","cldr_month_stand-alone_narrow_1":"J","cldr_month_stand-alone_narrow_10":"O","cldr_month_stand-alone_narrow_11":"N","cldr_month_stand-alone_narrow_12":"D","cldr_month_stand-alone_narrow_2":"F","cldr_month_stand-alone_narrow_3":"M","cldr_month_stand-alone_narrow_4":"A","cldr_month_stand-alone_narrow_5":"M","cldr_month_stand-alone_narrow_6":"J","cldr_month_stand-alone_narrow_7":"J","cldr_month_stand-alone_narrow_8":"A","cldr_month_stand-alone_narrow_9":"S","cldr_number_decimal_separator":".","cldr_number_group_separator":",","cldr_number_percent_format":"#,##0%","cldr_pm":"PM","cldr_time_format_full":"h:mm:ss a zzzz","cldr_time_format_long":"h:mm:ss a z","cldr_time_format_medium":"h:mm:ss a","cldr_time_format_short":"h:mm a","day":"Day","dayperiod":"AM/PM","era":"Era","hour":"Hour","minute":"Minute","month":"Month","quotationEnd":"”","quotationStart":"“","second":"Second","week":"Week","weekday":"Day of the Week","year":"Year","zone":"Time Zone"},"de":{"alternateQuotationEnd":"‘","alternateQuotationStart":"‚","cldr_am":"vorm.","cldr_date_format_full":"EEEE, d. MMMM y","cldr_date_format_long":"d. MMMM y","cldr_date_format_medium":"dd.MM.yyyy","cldr_date_format_short":"dd.MM.yy","cldr_date_time_format_EEEd":"EEE d.","cldr_date_time_format_Ed":"E, d.","cldr_date_time_format_H":"HH 'Uhr'","cldr_date_time_format_Hm":"HH:mm","cldr_date_time_format_Hms":"HH:mm:ss","cldr_date_time_format_M":"L","cldr_date_time_format_MEd":"E, d.M.","cldr_date_time_format_MMM":"LLL","cldr_date_time_format_MMMEd":"E, d. MMM","cldr_date_time_format_MMMMEd":"E, d. MMMM","cldr_date_time_format_MMMMdd":"dd. MMMM","cldr_date_time_format_MMMd":"d. MMM","cldr_date_time_format_MMd":"d.MM.","cldr_date_time_format_MMdd":"dd.MM.","cldr_date_time_format_Md":"d.M.","cldr_date_time_format_d":"d","cldr_date_time_format_hm":"h:mm a","cldr_date_time_format_hms":"h:mm:ss a","cldr_date_time_format_ms":"mm:ss","cldr_date_time_format_y":"y","cldr_date_time_format_yM":"M.y","cldr_date_time_format_yMEd":"EEE, d.M.y","cldr_date_time_format_yMMM":"MMM y","cldr_date_time_format_yMMMEd":"EEE, d. MMM y","cldr_date_time_format_yMMMd":"d. MMM y","cldr_date_time_format_yMd":"d.M.y","cldr_date_time_format_yQ":"Q y","cldr_date_time_format_yQQQ":"QQQ y","cldr_date_time_format_yyMM":"MM.yy","cldr_date_time_format_yyMMM":"MMM yy","cldr_date_time_format_yyMMdd":"dd.MM.yy","cldr_date_time_format_yyQ":"Q yy","cldr_date_time_format_yyQQQQ":"QQQQ yy","cldr_date_time_format_yyyy":"y","cldr_date_time_format_yyyyMMMM":"MMMM y","cldr_day_format_abbreviated_fri":"Fr.","cldr_day_format_abbreviated_mon":"Mo.","cldr_day_format_abbreviated_sat":"Sa.","cldr_day_format_abbreviated_sun":"So.","cldr_day_format_abbreviated_thu":"Do.","cldr_day_format_abbreviated_tue":"Di.","cldr_day_format_abbreviated_wed":"Mi.","cldr_day_format_wide_fri":"Freitag","cldr_day_format_wide_mon":"Montag","cldr_day_format_wide_sat":"Samstag","cldr_day_format_wide_sun":"Sonntag","cldr_day_format_wide_thu":"Donnerstag","cldr_day_format_wide_tue":"Dienstag","cldr_day_format_wide_wed":"Mittwoch","cldr_day_stand-alone_abbreviated_fri":"Fr","cldr_day_stand-alone_abbreviated_mon":"Mo","cldr_day_stand-alone_abbreviated_sat":"Sa","cldr_day_stand-alone_abbreviated_sun":"So","cldr_day_stand-alone_abbreviated_thu":"Do","cldr_day_stand-alone_abbreviated_tue":"Di","cldr_day_stand-alone_abbreviated_wed":"Mi","cldr_day_stand-alone_narrow_fri":"F","cldr_day_stand-alone_narrow_mon":"M","cldr_day_stand-alone_narrow_sat":"S","cldr_day_stand-alone_narrow_sun":"S","cldr_day_stand-alone_narrow_thu":"D","cldr_day_stand-alone_narrow_tue":"D","cldr_day_stand-alone_narrow_wed":"M","cldr_month_format_abbreviated_1":"Jan","cldr_month_format_abbreviated_10":"Okt","cldr_month_format_abbreviated_11":"Nov","cldr_month_format_abbreviated_12":"Dez","cldr_month_format_abbreviated_2":"Feb","cldr_month_format_abbreviated_3":"Mär","cldr_month_format_abbreviated_4":"Apr","cldr_month_format_abbreviated_5":"Mai","cldr_month_format_abbreviated_6":"Jun","cldr_month_format_abbreviated_7":"Jul","cldr_month_format_abbreviated_8":"Aug","cldr_month_format_abbreviated_9":"Sep","cldr_month_format_wide_1":"Januar","cldr_month_format_wide_10":"Oktober","cldr_month_format_wide_11":"November","cldr_month_format_wide_12":"Dezember","cldr_month_format_wide_2":"Februar","cldr_month_format_wide_3":"März","cldr_month_format_wide_4":"April","cldr_month_format_wide_5":"Mai","cldr_month_format_wide_6":"Juni","cldr_month_format_wide_7":"Juli","cldr_month_format_wide_8":"August","cldr_month_format_wide_9":"September","cldr_month_stand-alone_abbreviated_1":"Jan","cldr_month_stand-alone_abbreviated_10":"Okt","cldr_month_stand-alone_abbreviated_11":"Nov","cldr_month_stand-alone_abbreviated_12":"Dez","cldr_month_stand-alone_abbreviated_2":"Feb","cldr_month_stand-alone_abbreviated_3":"Mär","cldr_month_stand-alone_abbreviated_4":"Apr","cldr_month_stand-alone_abbreviated_5":"Mai","cldr_month_stand-alone_abbreviated_6":"Jun","cldr_month_stand-alone_abbreviated_7":"Jul","cldr_month_stand-alone_abbreviated_8":"Aug","cldr_month_stand-alone_abbreviated_9":"Sep","cldr_month_stand-alone_narrow_1":"J","cldr_month_stand-alone_narrow_10":"O","cldr_month_stand-alone_narrow_11":"N","cldr_month_stand-alone_narrow_12":"D","cldr_month_stand-alone_narrow_2":"F","cldr_month_stand-alone_narrow_3":"M","cldr_month_stand-alone_narrow_4":"A","cldr_month_stand-alone_narrow_5":"M","cldr_month_stand-alone_narrow_6":"J","cldr_month_stand-alone_narrow_7":"J","cldr_month_stand-alone_narrow_8":"A","cldr_month_stand-alone_narrow_9":"S","cldr_number_decimal_separator":",","cldr_number_group_separator":".","cldr_number_percent_format":"#,##0 %","cldr_pm":"nachm.","cldr_time_format_full":"HH:mm:ss zzzz","cldr_time_format_long":"HH:mm:ss z","cldr_time_format_medium":"HH:mm:ss","cldr_time_format_short":"HH:mm","day":"Tag","dayperiod":"Tageshälfte","era":"Epoche","hour":"Stunde","minute":"Minute","month":"Monat","quotationEnd":"“","quotationStart":"„","second":"Sekunde","week":"Woche","weekday":"Wochentag","year":"Jahr","zone":"Zone"},"en":{"alternateQuotationEnd":"’","alternateQuotationStart":"‘","cldr_am":"AM","cldr_date_format_full":"EEEE, MMMM d, y","cldr_date_format_long":"MMMM d, y","cldr_date_format_medium":"MMM d, y","cldr_date_format_short":"M/d/yy","cldr_date_time_format_EEEd":"d EEE","cldr_date_time_format_Hm":"HH:mm","cldr_date_time_format_Hms":"HH:mm:ss","cldr_date_time_format_M":"L","cldr_date_time_format_MEd":"E, M/d","cldr_date_time_format_MMM":"LLL","cldr_date_time_format_MMMEd":"E, MMM d","cldr_date_time_format_MMMd":"MMM d","cldr_date_time_format_Md":"M/d","cldr_date_time_format_d":"d","cldr_date_time_format_hm":"h:mm a","cldr_date_time_format_hms":"h:mm:ss a","cldr_date_time_format_ms":"mm:ss","cldr_date_time_format_y":"y","cldr_date_time_format_yM":"M/y","cldr_date_time_format_yMEd":"EEE, M/d/y","cldr_date_time_format_yMMM":"MMM y","cldr_date_time_format_yMMMEd":"EEE, MMM d, y","cldr_date_time_format_yMMMd":"MMM d, y","cldr_date_time_format_yMd":"M/d/y","cldr_date_time_format_yQ":"Q y","cldr_date_time_format_yQQQ":"QQQ y","cldr_day_format_abbreviated_fri":"Fri","cldr_day_format_abbreviated_mon":"Mon","cldr_day_format_abbreviated_sat":"Sat","cldr_day_format_abbreviated_sun":"Sun","cldr_day_format_abbreviated_thu":"Thu","cldr_day_format_abbreviated_tue":"Tue","cldr_day_format_abbreviated_wed":"Wed","cldr_day_format_wide_fri":"Friday","cldr_day_format_wide_mon":"Monday","cldr_day_format_wide_sat":"Saturday","cldr_day_format_wide_sun":"Sunday","cldr_day_format_wide_thu":"Thursday","cldr_day_format_wide_tue":"Tuesday","cldr_day_format_wide_wed":"Wednesday","cldr_day_stand-alone_narrow_fri":"F","cldr_day_stand-alone_narrow_mon":"M","cldr_day_stand-alone_narrow_sat":"S","cldr_day_stand-alone_narrow_sun":"S","cldr_day_stand-alone_narrow_thu":"T","cldr_day_stand-alone_narrow_tue":"T","cldr_day_stand-alone_narrow_wed":"W","cldr_month_format_abbreviated_1":"Jan","cldr_month_format_abbreviated_10":"Oct","cldr_month_format_abbreviated_11":"Nov","cldr_month_format_abbreviated_12":"Dec","cldr_month_format_abbreviated_2":"Feb","cldr_month_format_abbreviated_3":"Mar","cldr_month_format_abbreviated_4":"Apr","cldr_month_format_abbreviated_5":"May","cldr_month_format_abbreviated_6":"Jun","cldr_month_format_abbreviated_7":"Jul","cldr_month_format_abbreviated_8":"Aug","cldr_month_format_abbreviated_9":"Sep","cldr_month_format_wide_1":"January","cldr_month_format_wide_10":"October","cldr_month_format_wide_11":"November","cldr_month_format_wide_12":"December","cldr_month_format_wide_2":"February","cldr_month_format_wide_3":"March","cldr_month_format_wide_4":"April","cldr_month_format_wide_5":"May","cldr_month_format_wide_6":"June","cldr_month_format_wide_7":"July","cldr_month_format_wide_8":"August","cldr_month_format_wide_9":"September","cldr_month_stand-alone_narrow_1":"J","cldr_month_stand-alone_narrow_10":"O","cldr_month_stand-alone_narrow_11":"N","cldr_month_stand-alone_narrow_12":"D","cldr_month_stand-alone_narrow_2":"F","cldr_month_stand-alone_narrow_3":"M","cldr_month_stand-alone_narrow_4":"A","cldr_month_stand-alone_narrow_5":"M","cldr_month_stand-alone_narrow_6":"J","cldr_month_stand-alone_narrow_7":"J","cldr_month_stand-alone_narrow_8":"A","cldr_month_stand-alone_narrow_9":"S","cldr_number_decimal_separator":".","cldr_number_group_separator":",","cldr_number_percent_format":"#,##0%","cldr_pm":"PM","cldr_time_format_full":"h:mm:ss a zzzz","cldr_time_format_long":"h:mm:ss a z","cldr_time_format_medium":"h:mm:ss a","cldr_time_format_short":"h:mm a","day":"Day","dayperiod":"AM/PM","era":"Era","hour":"Hour","minute":"Minute","month":"Month","quotationEnd":"”","quotationStart":"“","second":"Second","week":"Week","weekday":"Day of the Week","year":"Year","zone":"Time Zone"},"fr":{"alternateQuotationEnd":"”","alternateQuotationStart":"“","cldr_am":"AM","cldr_date_format_full":"EEEE d MMMM y","cldr_date_format_long":"d MMMM y","cldr_date_format_medium":"d MMM y","cldr_date_format_short":"dd/MM/yy","cldr_date_time_format_EEEd":"EEE d","cldr_date_time_format_Ed":"E d","cldr_date_time_format_Hm":"HH:mm","cldr_date_time_format_Hms":"HH:mm:ss","cldr_date_time_format_M":"L","cldr_date_time_format_MEd":"EEE d/M","cldr_date_time_format_MMM":"LLL","cldr_date_time_format_MMMEd":"E d MMM","cldr_date_time_format_MMMMEd":"EEE d MMMM","cldr_date_time_format_MMMd":"d MMM","cldr_date_time_format_MMMdd":"dd MMM","cldr_date_time_format_MMd":"d/MM","cldr_date_time_format_MMdd":"dd/MM","cldr_date_time_format_Md":"d/M","cldr_date_time_format_d":"d","cldr_date_time_format_hm":"h:mm a","cldr_date_time_format_hms":"h:mm:ss a","cldr_date_time_format_ms":"mm:ss","cldr_date_time_format_y":"y","cldr_date_time_format_yM":"M/yyyy","cldr_date_time_format_yMEd":"EEE d/M/yyyy","cldr_date_time_format_yMMM":"MMM y","cldr_date_time_format_yMMMEd":"EEE d MMM y","cldr_date_time_format_yMMMd":"d MMM y","cldr_date_time_format_yMd":"d/M/yyyy","cldr_date_time_format_yQ":"'T'Q y","cldr_date_time_format_yQQQ":"QQQ y","cldr_date_time_format_yyMM":"MM/yy","cldr_date_time_format_yyMMM":"MMM yy","cldr_date_time_format_yyMMMEEEd":"EEE d MMM yy","cldr_date_time_format_yyMMMd":"d MMM yy","cldr_date_time_format_yyQ":"'T'Q yy","cldr_date_time_format_yyQQQQ":"QQQQ yy","cldr_date_time_format_yyyyMMMM":"MMMM y","cldr_day_format_abbreviated_fri":"ven.","cldr_day_format_abbreviated_mon":"lun.","cldr_day_format_abbreviated_sat":"sam.","cldr_day_format_abbreviated_sun":"dim.","cldr_day_format_abbreviated_thu":"jeu.","cldr_day_format_abbreviated_tue":"mar.","cldr_day_format_abbreviated_wed":"mer.","cldr_day_format_wide_fri":"vendredi","cldr_day_format_wide_mon":"lundi","cldr_day_format_wide_sat":"samedi","cldr_day_format_wide_sun":"dimanche","cldr_day_format_wide_thu":"jeudi","cldr_day_format_wide_tue":"mardi","cldr_day_format_wide_wed":"mercredi","cldr_day_stand-alone_abbreviated_fri":"ven.","cldr_day_stand-alone_abbreviated_mon":"lun.","cldr_day_stand-alone_abbreviated_sat":"sam.","cldr_day_stand-alone_abbreviated_sun":"dim.","cldr_day_stand-alone_abbreviated_thu":"jeu.","cldr_day_stand-alone_abbreviated_tue":"mar.","cldr_day_stand-alone_abbreviated_wed":"mer.","cldr_day_stand-alone_narrow_fri":"V","cldr_day_stand-alone_narrow_mon":"L","cldr_day_stand-alone_narrow_sat":"S","cldr_day_stand-alone_narrow_sun":"D","cldr_day_stand-alone_narrow_thu":"J","cldr_day_stand-alone_narrow_tue":"M","cldr_day_stand-alone_narrow_wed":"M","cldr_month_format_abbreviated_1":"janv.","cldr_month_format_abbreviated_10":"oct.","cldr_month_format_abbreviated_11":"nov.","cldr_month_format_abbreviated_12":"déc.","cldr_month_format_abbreviated_2":"févr.","cldr_month_format_abbreviated_3":"mars","cldr_month_format_abbreviated_4":"avr.","cldr_month_format_abbreviated_5":"mai","cldr_month_format_abbreviated_6":"juin","cldr_month_format_abbreviated_7":"juil.","cldr_month_format_abbreviated_8":"août","cldr_month_format_abbreviated_9":"sept.","cldr_month_format_wide_1":"janvier","cldr_month_format_wide_10":"octobre","cldr_month_format_wide_11":"novembre","cldr_month_format_wide_12":"décembre","cldr_month_format_wide_2":"février","cldr_month_format_wide_3":"mars","cldr_month_format_wide_4":"avril","cldr_month_format_wide_5":"mai","cldr_month_format_wide_6":"juin","cldr_month_format_wide_7":"juillet","cldr_month_format_wide_8":"août","cldr_month_format_wide_9":"septembre","cldr_month_stand-alone_abbreviated_1":"janv.","cldr_month_stand-alone_abbreviated_10":"oct.","cldr_month_stand-alone_abbreviated_11":"nov.","cldr_month_stand-alone_abbreviated_12":"déc.","cldr_month_stand-alone_abbreviated_2":"févr.","cldr_month_stand-alone_abbreviated_3":"mars","cldr_month_stand-alone_abbreviated_4":"avr.","cldr_month_stand-alone_abbreviated_7":"juil.","cldr_month_stand-alone_abbreviated_9":"sept.","cldr_month_stand-alone_narrow_1":"J","cldr_month_stand-alone_narrow_10":"O","cldr_month_stand-alone_narrow_11":"N","cldr_month_stand-alone_narrow_12":"D","cldr_month_stand-alone_narrow_2":"F","cldr_month_stand-alone_narrow_3":"M","cldr_month_stand-alone_narrow_4":"A","cldr_month_stand-alone_narrow_5":"M","cldr_month_stand-alone_narrow_6":"J","cldr_month_stand-alone_narrow_7":"J","cldr_month_stand-alone_narrow_8":"A","cldr_month_stand-alone_narrow_9":"S","cldr_number_decimal_separator":",","cldr_number_group_separator":" ","cldr_number_percent_format":"#,##0 %","cldr_pm":"PM","cldr_time_format_full":"HH:mm:ss zzzz","cldr_time_format_long":"HH:mm:ss z","cldr_time_format_medium":"HH:mm:ss","cldr_time_format_short":"HH:mm","day":"jour","dayperiod":"cadran","era":"ère","hour":"heure","minute":"minute","month":"mois","quotationEnd":"»","quotationStart":"«","second":"seconde","week":"semaine","weekday":"jour de la semaine","year":"année","zone":"fuseau horaire"}},"resources":{"qx/decoration/Classic/arrows-combined.gif":[124,7,"gif","qx"],"qx/decoration/Classic/arrows/down-invert.gif":[7,4,"gif","qx","qx/decoration/Classic/arrows-combined.gif",-38,0],"qx/decoration/Classic/arrows/down-small-invert.gif":[5,3,"gif","qx","qx/decoration/Classic/arrows-combined.gif",-87,0],"qx/decoration/Classic/arrows/down-small.gif":[5,3,"gif","qx","qx/decoration/Classic/arrows-combined.gif",-53,0],"qx/decoration/Classic/arrows/down.gif":[7,4,"gif","qx","qx/decoration/Classic/arrows-combined.gif",-113,0],"qx/decoration/Classic/arrows/forward-invert.gif":[8,7,"gif","qx","qx/decoration/Classic/arrows-combined.gif",-30,0],"qx/decoration/Classic/arrows/forward.gif":[8,7,"gif","qx","qx/decoration/Classic/arrows-combined.gif",-18,0],"qx/decoration/Classic/arrows/left-invert.gif":[4,7,"gif","qx","qx/decoration/Classic/arrows-combined.gif",-92,0],"qx/decoration/Classic/arrows/left-small-invert.gif":[3,5,"gif","qx","qx/decoration/Classic/arrows-combined.gif",-58,0],"qx/decoration/Classic/arrows/left-small.gif":[3,5,"gif","qx","qx/decoration/Classic/arrows-combined.gif",-15,0],"qx/decoration/Classic/arrows/left.gif":[4,7,"gif","qx","qx/decoration/Classic/arrows-combined.gif",-120,0],"qx/decoration/Classic/arrows/next-invert.gif":[4,7,"gif","qx","qx/decoration/Classic/arrows-combined.gif",-80,0],"qx/decoration/Classic/arrows/next.gif":[4,7,"gif","qx","qx/decoration/Classic/arrows-combined.gif",-109,0],"qx/decoration/Classic/arrows/previous-invert.gif":[4,7,"gif","qx","qx/decoration/Classic/arrows-combined.gif",-69,0],"qx/decoration/Classic/arrows/previous.gif":[4,7,"gif","qx","qx/decoration/Classic/arrows-combined.gif",-65,0],"qx/decoration/Classic/arrows/rewind-invert.gif":[8,7,"gif","qx","qx/decoration/Classic/arrows-combined.gif",-45,0],"qx/decoration/Classic/arrows/rewind.gif":[8,7,"gif","qx","qx/decoration/Classic/arrows-combined.gif",-101,0],"qx/decoration/Classic/arrows/right-invert.gif":[4,7,"gif","qx","qx/decoration/Classic/arrows-combined.gif",-61,0],"qx/decoration/Classic/arrows/right-small-invert.gif":[3,5,"gif","qx","qx/decoration/Classic/arrows-combined.gif",0,0],"qx/decoration/Classic/arrows/right-small.gif":[3,5,"gif","qx","qx/decoration/Classic/arrows-combined.gif",-84,0],"qx/decoration/Classic/arrows/right.gif":[4,7,"gif","qx","qx/decoration/Classic/arrows-combined.gif",-26,0],"qx/decoration/Classic/arrows/up-invert.gif":[7,4,"gif","qx","qx/decoration/Classic/arrows-combined.gif",-73,0],"qx/decoration/Classic/arrows/up-small-invert.gif":[5,3,"gif","qx","qx/decoration/Classic/arrows-combined.gif",-96,0],"qx/decoration/Classic/arrows/up-small.gif":[5,3,"gif","qx","qx/decoration/Classic/arrows-combined.gif",-3,0],"qx/decoration/Classic/arrows/up.gif":[7,4,"gif","qx","qx/decoration/Classic/arrows-combined.gif",-8,0],"qx/decoration/Classic/checkbox-radiobutton-combined.png":[504,14,"png","qx"],"qx/decoration/Classic/colorselector-combined.gif":[46,11,"gif","qx"],"qx/decoration/Classic/colorselector/brightness-field.png":[19,256,"png","qx"],"qx/decoration/Classic/colorselector/brightness-handle.gif":[35,11,"gif","qx","qx/decoration/Classic/colorselector-combined.gif",-11,0],"qx/decoration/Classic/colorselector/huesaturation-field.jpg":[256,256,"jpeg","qx"],"qx/decoration/Classic/colorselector/huesaturation-handle.gif":[11,11,"gif","qx","qx/decoration/Classic/colorselector-combined.gif",0,0],"qx/decoration/Classic/cursors-combined.gif":[71,20,"gif","qx"],"qx/decoration/Classic/cursors/alias.gif":[19,15,"gif","qx","qx/decoration/Classic/cursors-combined.gif",-52,0],"qx/decoration/Classic/cursors/copy.gif":[19,15,"gif","qx","qx/decoration/Classic/cursors-combined.gif",-20,0],"qx/decoration/Classic/cursors/move.gif":[13,9,"gif","qx","qx/decoration/Classic/cursors-combined.gif",-39,0],"qx/decoration/Classic/cursors/nodrop.gif":[20,20,"gif","qx","qx/decoration/Classic/cursors-combined.gif",0,0],"qx/decoration/Classic/datechooser/last-month-invert.png":[16,16,"png","qx"],"qx/decoration/Classic/datechooser/last-month.png":[16,16,"png","qx"],"qx/decoration/Classic/datechooser/last-year-invert.png":[16,16,"png","qx"],"qx/decoration/Classic/datechooser/last-year.png":[16,16,"png","qx"],"qx/decoration/Classic/datechooser/next-month-invert.png":[16,16,"png","qx"],"qx/decoration/Classic/datechooser/next-month.png":[16,16,"png","qx"],"qx/decoration/Classic/datechooser/next-year-invert.png":[16,16,"png","qx"],"qx/decoration/Classic/datechooser/next-year.png":[16,16,"png","qx"],"qx/decoration/Classic/form/checkbox-checked-disabled.png":[14,14,"png","qx","qx/decoration/Classic/checkbox-radiobutton-combined.png",-336,0],"qx/decoration/Classic/form/checkbox-checked-focused-invalid.png":[14,14,"png","qx","qx/decoration/Classic/checkbox-radiobutton-combined.png",-28,0],"qx/decoration/Classic/form/checkbox-checked-focused.png":[14,14,"png","qx","qx/decoration/Classic/checkbox-radiobutton-combined.png",-462,0],"qx/decoration/Classic/form/checkbox-checked-hovered-invalid.png":[14,14,"png","qx","qx/decoration/Classic/checkbox-radiobutton-combined.png",-112,0],"qx/decoration/Classic/form/checkbox-checked-hovered.png":[14,14,"png","qx","qx/decoration/Classic/checkbox-radiobutton-combined.png",-140,0],"qx/decoration/Classic/form/checkbox-checked-invalid.png":[14,14,"png","qx","qx/decoration/Classic/checkbox-radiobutton-combined.png",-98,0],"qx/decoration/Classic/form/checkbox-checked-pressed-invalid.png":[14,14,"png","qx","qx/decoration/Classic/checkbox-radiobutton-combined.png",-308,0],"qx/decoration/Classic/form/checkbox-checked-pressed.png":[14,14,"png","qx","qx/decoration/Classic/checkbox-radiobutton-combined.png",0,0],"qx/decoration/Classic/form/checkbox-checked.png":[14,14,"png","qx","qx/decoration/Classic/checkbox-radiobutton-combined.png",-266,0],"qx/decoration/Classic/form/checkbox-disabled.png":[14,14,"png","qx","qx/decoration/Classic/checkbox-radiobutton-combined.png",-84,0],"qx/decoration/Classic/form/checkbox-focused-invalid.png":[14,14,"png","qx","qx/decoration/Classic/checkbox-radiobutton-combined.png",-476,0],"qx/decoration/Classic/form/checkbox-focused.png":[14,14,"png","qx","qx/decoration/Classic/checkbox-radiobutton-combined.png",-392,0],"qx/decoration/Classic/form/checkbox-hovered-invalid.png":[14,14,"png","qx","qx/decoration/Classic/checkbox-radiobutton-combined.png",-196,0],"qx/decoration/Classic/form/checkbox-hovered.png":[14,14,"png","qx","qx/decoration/Classic/checkbox-radiobutton-combined.png",-154,0],"qx/decoration/Classic/form/checkbox-invalid.png":[14,14,"png","qx","qx/decoration/Classic/checkbox-radiobutton-combined.png",-350,0],"qx/decoration/Classic/form/checkbox-pressed-invalid.png":[14,14,"png","qx","qx/decoration/Classic/checkbox-radiobutton-combined.png",-448,0],"qx/decoration/Classic/form/checkbox-pressed.png":[14,14,"png","qx","qx/decoration/Classic/checkbox-radiobutton-combined.png",-70,0],"qx/decoration/Classic/form/checkbox-undetermined-disabled.png":[14,14,"png","qx"],"qx/decoration/Classic/form/checkbox-undetermined-focused-invalid.png":[14,14,"png","qx"],"qx/decoration/Classic/form/checkbox-undetermined-focused.png":[14,14,"png","qx"],"qx/decoration/Classic/form/checkbox-undetermined-hovered-invalid.png":[14,14,"png","qx"],"qx/decoration/Classic/form/checkbox-undetermined-hovered.png":[14,14,"png","qx"],"qx/decoration/Classic/form/checkbox-undetermined-invalid.png":[14,14,"png","qx"],"qx/decoration/Classic/form/checkbox-undetermined.png":[14,14,"png","qx"],"qx/decoration/Classic/form/checkbox.png":[14,14,"png","qx","qx/decoration/Classic/checkbox-radiobutton-combined.png",-490,0],"qx/decoration/Classic/form/radiobutton-checked-disabled.png":[14,14,"png","qx","qx/decoration/Classic/checkbox-radiobutton-combined.png",-210,0],"qx/decoration/Classic/form/radiobutton-checked-focused-invalid.png":[14,14,"png","qx","qx/decoration/Classic/checkbox-radiobutton-combined.png",-406,0],"qx/decoration/Classic/form/radiobutton-checked-focused.png":[14,14,"png","qx","qx/decoration/Classic/checkbox-radiobutton-combined.png",-378,0],"qx/decoration/Classic/form/radiobutton-checked-hovered-invalid.png":[14,14,"png","qx","qx/decoration/Classic/checkbox-radiobutton-combined.png",-252,0],"qx/decoration/Classic/form/radiobutton-checked-hovered.png":[14,14,"png","qx","qx/decoration/Classic/checkbox-radiobutton-combined.png",-182,0],"qx/decoration/Classic/form/radiobutton-checked-invalid.png":[14,14,"png","qx","qx/decoration/Classic/checkbox-radiobutton-combined.png",-294,0],"qx/decoration/Classic/form/radiobutton-checked-pressed-invalid.png":[14,14,"png","qx","qx/decoration/Classic/checkbox-radiobutton-combined.png",-420,0],"qx/decoration/Classic/form/radiobutton-checked-pressed.png":[14,14,"png","qx","qx/decoration/Classic/checkbox-radiobutton-combined.png",-56,0],"qx/decoration/Classic/form/radiobutton-checked.png":[14,14,"png","qx","qx/decoration/Classic/checkbox-radiobutton-combined.png",-322,0],"qx/decoration/Classic/form/radiobutton-disabled.png":[14,14,"png","qx","qx/decoration/Classic/checkbox-radiobutton-combined.png",-364,0],"qx/decoration/Classic/form/radiobutton-focused-invalid.png":[14,14,"png","qx","qx/decoration/Classic/checkbox-radiobutton-combined.png",-434,0],"qx/decoration/Classic/form/radiobutton-focused.png":[14,14,"png","qx","qx/decoration/Classic/checkbox-radiobutton-combined.png",-168,0],"qx/decoration/Classic/form/radiobutton-hovered-invalid.png":[14,14,"png","qx","qx/decoration/Classic/checkbox-radiobutton-combined.png",-126,0],"qx/decoration/Classic/form/radiobutton-hovered.png":[14,14,"png","qx","qx/decoration/Classic/checkbox-radiobutton-combined.png",-42,0],"qx/decoration/Classic/form/radiobutton-invalid.png":[14,14,"png","qx","qx/decoration/Classic/checkbox-radiobutton-combined.png",-280,0],"qx/decoration/Classic/form/radiobutton-pressed-invalid.png":[14,14,"png","qx","qx/decoration/Classic/checkbox-radiobutton-combined.png",-238,0],"qx/decoration/Classic/form/radiobutton-pressed.png":[14,14,"png","qx","qx/decoration/Classic/checkbox-radiobutton-combined.png",-14,0],"qx/decoration/Classic/form/radiobutton.png":[14,14,"png","qx","qx/decoration/Classic/checkbox-radiobutton-combined.png",-224,0],"qx/decoration/Classic/menu-combined.gif":[64,7,"gif","qx"],"qx/decoration/Classic/menu/checkbox-invert.gif":[16,7,"gif","qx","qx/decoration/Classic/menu-combined.gif",-16,0],"qx/decoration/Classic/menu/checkbox.gif":[16,7,"gif","qx","qx/decoration/Classic/menu-combined.gif",-32,0],"qx/decoration/Classic/menu/radiobutton-invert.gif":[16,5,"gif","qx","qx/decoration/Classic/menu-combined.gif",0,0],"qx/decoration/Classic/menu/radiobutton.gif":[16,5,"gif","qx","qx/decoration/Classic/menu-combined.gif",-48,0],"qx/decoration/Classic/shadow-lr-combined.png":[30,382,"png","qx"],"qx/decoration/Classic/shadow-small-lr-combined.png":[10,136,"png","qx"],"qx/decoration/Classic/shadow-small-tb-combined.png":[5,30,"png","qx"],"qx/decoration/Classic/shadow-tb-combined.png":[15,90,"png","qx"],"qx/decoration/Classic/shadow/shadow-b.png":[15,15,"png","qx","qx/decoration/Classic/shadow-tb-combined.png",0,-30],"qx/decoration/Classic/shadow/shadow-bl.png":[15,15,"png","qx","qx/decoration/Classic/shadow-tb-combined.png",0,0],"qx/decoration/Classic/shadow/shadow-br.png":[15,15,"png","qx","qx/decoration/Classic/shadow-tb-combined.png",0,-60],"qx/decoration/Classic/shadow/shadow-c.png":[40,382,"png","qx"],"qx/decoration/Classic/shadow/shadow-l.png":[15,382,"png","qx","qx/decoration/Classic/shadow-lr-combined.png",-15,0],"qx/decoration/Classic/shadow/shadow-r.png":[15,382,"png","qx","qx/decoration/Classic/shadow-lr-combined.png",0,0],"qx/decoration/Classic/shadow/shadow-small-b.png":[5,5,"png","qx","qx/decoration/Classic/shadow-small-tb-combined.png",0,-25],"qx/decoration/Classic/shadow/shadow-small-bl.png":[5,5,"png","qx","qx/decoration/Classic/shadow-small-tb-combined.png",0,-20],"qx/decoration/Classic/shadow/shadow-small-br.png":[5,5,"png","qx","qx/decoration/Classic/shadow-small-tb-combined.png",0,0],"qx/decoration/Classic/shadow/shadow-small-c.png":[40,136,"png","qx"],"qx/decoration/Classic/shadow/shadow-small-l.png":[5,136,"png","qx","qx/decoration/Classic/shadow-small-lr-combined.png",0,0],"qx/decoration/Classic/shadow/shadow-small-r.png":[5,136,"png","qx","qx/decoration/Classic/shadow-small-lr-combined.png",-5,0],"qx/decoration/Classic/shadow/shadow-small-t.png":[5,5,"png","qx","qx/decoration/Classic/shadow-small-tb-combined.png",0,-5],"qx/decoration/Classic/shadow/shadow-small-tl.png":[5,5,"png","qx","qx/decoration/Classic/shadow-small-tb-combined.png",0,-15],"qx/decoration/Classic/shadow/shadow-small-tr.png":[5,5,"png","qx","qx/decoration/Classic/shadow-small-tb-combined.png",0,-10],"qx/decoration/Classic/shadow/shadow-small.png":[114,146,"png","qx"],"qx/decoration/Classic/shadow/shadow-t.png":[15,15,"png","qx","qx/decoration/Classic/shadow-tb-combined.png",0,-75],"qx/decoration/Classic/shadow/shadow-tl.png":[15,15,"png","qx","qx/decoration/Classic/shadow-tb-combined.png",0,-45],"qx/decoration/Classic/shadow/shadow-tr.png":[15,15,"png","qx","qx/decoration/Classic/shadow-tb-combined.png",0,-15],"qx/decoration/Classic/shadow/shadow.png":[381,412,"png","qx"],"qx/decoration/Classic/splitpane/knob-horizontal.png":[4,15,"png","qx"],"qx/decoration/Classic/splitpane/knob-vertical.png":[15,4,"png","qx"],"qx/decoration/Classic/table-combined.png":[72,11,"png","qx"],"qx/decoration/Classic/table/ascending-invert.png":[10,10,"png","qx","qx/decoration/Classic/table-combined.png",-62,0],"qx/decoration/Classic/table/ascending.png":[10,10,"png","qx","qx/decoration/Classic/table-combined.png",-52,0],"qx/decoration/Classic/table/boolean-false.png":[11,11,"png","qx","qx/decoration/Classic/table-combined.png",-31,0],"qx/decoration/Classic/table/boolean-true.png":[11,11,"png","qx","qx/decoration/Classic/table-combined.png",-10,0],"qx/decoration/Classic/table/descending-invert.png":[10,10,"png","qx","qx/decoration/Classic/table-combined.png",-42,0],"qx/decoration/Classic/table/descending.png":[10,10,"png","qx","qx/decoration/Classic/table-combined.png",0,0],"qx/decoration/Classic/table/select-column-order.png":[10,9,"png","qx","qx/decoration/Classic/table-combined.png",-21,0],"qx/decoration/Classic/tree/minus.gif":[19,16,"gif","qx"],"qx/decoration/Classic/tree/plus.gif":[19,16,"gif","qx"],"qx/decoration/Classic/treevirtual/cross.gif":[19,16,"gif","qx"],"qx/decoration/Classic/treevirtual/cross_minus.gif":[19,16,"gif","qx"],"qx/decoration/Classic/treevirtual/cross_plus.gif":[19,16,"gif","qx"],"qx/decoration/Classic/treevirtual/end.gif":[19,16,"gif","qx"],"qx/decoration/Classic/treevirtual/end_minus.gif":[19,16,"gif","qx"],"qx/decoration/Classic/treevirtual/end_plus.gif":[19,16,"gif","qx"],"qx/decoration/Classic/treevirtual/line.gif":[19,16,"gif","qx"],"qx/decoration/Classic/treevirtual/only_minus.gif":[19,16,"gif","qx"],"qx/decoration/Classic/treevirtual/only_plus.gif":[19,16,"gif","qx"],"qx/decoration/Classic/treevirtual/start.gif":[19,16,"gif","qx"],"qx/decoration/Classic/treevirtual/start_minus.gif":[19,16,"gif","qx"],"qx/decoration/Classic/treevirtual/start_plus.gif":[19,16,"gif","qx"],"qx/decoration/Classic/window-captionbar-buttons-combined.gif":[36,9,"gif","qx"],"qx/decoration/Classic/window/close.gif":[10,9,"gif","qx","qx/decoration/Classic/window-captionbar-buttons-combined.gif",0,0],"qx/decoration/Classic/window/maximize.gif":[9,9,"gif","qx","qx/decoration/Classic/window-captionbar-buttons-combined.gif",-10,0],"qx/decoration/Classic/window/minimize.gif":[9,9,"gif","qx","qx/decoration/Classic/window-captionbar-buttons-combined.gif",-19,0],"qx/decoration/Classic/window/restore.gif":[8,9,"gif","qx","qx/decoration/Classic/window-captionbar-buttons-combined.gif",-28,0],"qx/decoration/Modern/app-header.png":[110,20,"png","qx"],"qx/decoration/Modern/arrows-combined.png":[87,8,"png","qx"],"qx/decoration/Modern/arrows/down-invert.png":[8,5,"png","qx","qx/decoration/Modern/arrows-combined.png",-74,0],"qx/decoration/Modern/arrows/down-small-invert.png":[5,3,"png","qx","qx/decoration/Modern/arrows-combined.png",-69,0],"qx/decoration/Modern/arrows/down-small.png":[5,3,"png","qx","qx/decoration/Modern/arrows-combined.png",-49,0],"qx/decoration/Modern/arrows/down.png":[8,5,"png","qx","qx/decoration/Modern/arrows-combined.png",-20,0],"qx/decoration/Modern/arrows/forward.png":[10,8,"png","qx","qx/decoration/Modern/arrows-combined.png",-59,0],"qx/decoration/Modern/arrows/left-invert.png":[5,8,"png","qx","qx/decoration/Modern/arrows-combined.png",0,0],"qx/decoration/Modern/arrows/left.png":[5,8,"png","qx","qx/decoration/Modern/arrows-combined.png",-44,0],"qx/decoration/Modern/arrows/rewind.png":[10,8,"png","qx","qx/decoration/Modern/arrows-combined.png",-10,0],"qx/decoration/Modern/arrows/right-invert.png":[5,8,"png","qx","qx/decoration/Modern/arrows-combined.png",-5,0],"qx/decoration/Modern/arrows/right.png":[5,8,"png","qx","qx/decoration/Modern/arrows-combined.png",-54,0],"qx/decoration/Modern/arrows/up-invert.png":[8,5,"png","qx","qx/decoration/Modern/arrows-combined.png",-28,0],"qx/decoration/Modern/arrows/up-small.png":[5,3,"png","qx","qx/decoration/Modern/arrows-combined.png",-82,0],"qx/decoration/Modern/arrows/up.png":[8,5,"png","qx","qx/decoration/Modern/arrows-combined.png",-36,0],"qx/decoration/Modern/button-lr-combined.png":[72,52,"png","qx"],"qx/decoration/Modern/button-tb-combined.png":[4,216,"png","qx"],"qx/decoration/Modern/checkradio-combined.png":[504,14,"png","qx"],"qx/decoration/Modern/colorselector-combined.gif":[46,11,"gif","qx"],"qx/decoration/Modern/colorselector/brightness-field.png":[19,256,"png","qx"],"qx/decoration/Modern/colorselector/brightness-handle.gif":[35,11,"gif","qx","qx/decoration/Modern/colorselector-combined.gif",0,0],"qx/decoration/Modern/colorselector/huesaturation-field.jpg":[256,256,"jpeg","qx"],"qx/decoration/Modern/colorselector/huesaturation-handle.gif":[11,11,"gif","qx","qx/decoration/Modern/colorselector-combined.gif",-35,0],"qx/decoration/Modern/cursors-combined.gif":[71,20,"gif","qx"],"qx/decoration/Modern/cursors/alias.gif":[19,15,"gif","qx","qx/decoration/Modern/cursors-combined.gif",-52,0],"qx/decoration/Modern/cursors/copy.gif":[19,15,"gif","qx","qx/decoration/Modern/cursors-combined.gif",-33,0],"qx/decoration/Modern/cursors/move.gif":[13,9,"gif","qx","qx/decoration/Modern/cursors-combined.gif",-20,0],"qx/decoration/Modern/cursors/nodrop.gif":[20,20,"gif","qx","qx/decoration/Modern/cursors-combined.gif",0,0],"qx/decoration/Modern/form/button-b.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-72],"qx/decoration/Modern/form/button-bl.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-204],"qx/decoration/Modern/form/button-br.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-188],"qx/decoration/Modern/form/button-c.png":[40,52,"png","qx"],"qx/decoration/Modern/form/button-checked-b.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-36],"qx/decoration/Modern/form/button-checked-bl.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-84],"qx/decoration/Modern/form/button-checked-br.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-184],"qx/decoration/Modern/form/button-checked-c.png":[40,52,"png","qx"],"qx/decoration/Modern/form/button-checked-focused-b.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-156],"qx/decoration/Modern/form/button-checked-focused-bl.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-208],"qx/decoration/Modern/form/button-checked-focused-br.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-160],"qx/decoration/Modern/form/button-checked-focused-c.png":[40,52,"png","qx"],"qx/decoration/Modern/form/button-checked-focused-l.png":[4,52,"png","qx","qx/decoration/Modern/button-lr-combined.png",-40,0],"qx/decoration/Modern/form/button-checked-focused-r.png":[4,52,"png","qx","qx/decoration/Modern/button-lr-combined.png",-32,0],"qx/decoration/Modern/form/button-checked-focused-t.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-28],"qx/decoration/Modern/form/button-checked-focused-tl.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-24],"qx/decoration/Modern/form/button-checked-focused-tr.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-48],"qx/decoration/Modern/form/button-checked-focused.png":[80,60,"png","qx"],"qx/decoration/Modern/form/button-checked-l.png":[4,52,"png","qx","qx/decoration/Modern/button-lr-combined.png",-16,0],"qx/decoration/Modern/form/button-checked-r.png":[4,52,"png","qx","qx/decoration/Modern/button-lr-combined.png",-60,0],"qx/decoration/Modern/form/button-checked-t.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-140],"qx/decoration/Modern/form/button-checked-tl.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-56],"qx/decoration/Modern/form/button-checked-tr.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-112],"qx/decoration/Modern/form/button-checked.png":[80,60,"png","qx"],"qx/decoration/Modern/form/button-disabled-b.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-40],"qx/decoration/Modern/form/button-disabled-bl.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-136],"qx/decoration/Modern/form/button-disabled-br.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-16],"qx/decoration/Modern/form/button-disabled-c.png":[40,52,"png","qx"],"qx/decoration/Modern/form/button-disabled-l.png":[4,52,"png","qx","qx/decoration/Modern/button-lr-combined.png",-68,0],"qx/decoration/Modern/form/button-disabled-r.png":[4,52,"png","qx","qx/decoration/Modern/button-lr-combined.png",-4,0],"qx/decoration/Modern/form/button-disabled-t.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-116],"qx/decoration/Modern/form/button-disabled-tl.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-168],"qx/decoration/Modern/form/button-disabled-tr.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-60],"qx/decoration/Modern/form/button-disabled.png":[80,60,"png","qx"],"qx/decoration/Modern/form/button-focused-b.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-68],"qx/decoration/Modern/form/button-focused-bl.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-144],"qx/decoration/Modern/form/button-focused-br.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-8],"qx/decoration/Modern/form/button-focused-c.png":[40,52,"png","qx"],"qx/decoration/Modern/form/button-focused-l.png":[4,52,"png","qx","qx/decoration/Modern/button-lr-combined.png",-24,0],"qx/decoration/Modern/form/button-focused-r.png":[4,52,"png","qx","qx/decoration/Modern/button-lr-combined.png",-44,0],"qx/decoration/Modern/form/button-focused-t.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-192],"qx/decoration/Modern/form/button-focused-tl.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-148],"qx/decoration/Modern/form/button-focused-tr.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-104],"qx/decoration/Modern/form/button-focused.png":[80,60,"png","qx"],"qx/decoration/Modern/form/button-hovered-b.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-108],"qx/decoration/Modern/form/button-hovered-bl.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-32],"qx/decoration/Modern/form/button-hovered-br.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-128],"qx/decoration/Modern/form/button-hovered-c.png":[40,52,"png","qx"],"qx/decoration/Modern/form/button-hovered-l.png":[4,52,"png","qx","qx/decoration/Modern/button-lr-combined.png",-20,0],"qx/decoration/Modern/form/button-hovered-r.png":[4,52,"png","qx","qx/decoration/Modern/button-lr-combined.png",-48,0],"qx/decoration/Modern/form/button-hovered-t.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-44],"qx/decoration/Modern/form/button-hovered-tl.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-76],"qx/decoration/Modern/form/button-hovered-tr.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-88],"qx/decoration/Modern/form/button-hovered.png":[80,60,"png","qx"],"qx/decoration/Modern/form/button-l.png":[4,52,"png","qx","qx/decoration/Modern/button-lr-combined.png",-56,0],"qx/decoration/Modern/form/button-preselected-b.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-124],"qx/decoration/Modern/form/button-preselected-bl.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-176],"qx/decoration/Modern/form/button-preselected-br.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-200],"qx/decoration/Modern/form/button-preselected-c.png":[40,52,"png","qx"],"qx/decoration/Modern/form/button-preselected-focused-b.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,0],"qx/decoration/Modern/form/button-preselected-focused-bl.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-4],"qx/decoration/Modern/form/button-preselected-focused-br.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-152],"qx/decoration/Modern/form/button-preselected-focused-c.png":[40,52,"png","qx"],"qx/decoration/Modern/form/button-preselected-focused-l.png":[4,52,"png","qx","qx/decoration/Modern/button-lr-combined.png",-28,0],"qx/decoration/Modern/form/button-preselected-focused-r.png":[4,52,"png","qx","qx/decoration/Modern/button-lr-combined.png",-36,0],"qx/decoration/Modern/form/button-preselected-focused-t.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-196],"qx/decoration/Modern/form/button-preselected-focused-tl.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-164],"qx/decoration/Modern/form/button-preselected-focused-tr.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-212],"qx/decoration/Modern/form/button-preselected-focused.png":[80,60,"png","qx"],"qx/decoration/Modern/form/button-preselected-l.png":[4,52,"png","qx","qx/decoration/Modern/button-lr-combined.png",-8,0],"qx/decoration/Modern/form/button-preselected-r.png":[4,52,"png","qx","qx/decoration/Modern/button-lr-combined.png",-64,0],"qx/decoration/Modern/form/button-preselected-t.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-96],"qx/decoration/Modern/form/button-preselected-tl.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-80],"qx/decoration/Modern/form/button-preselected-tr.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-132],"qx/decoration/Modern/form/button-preselected.png":[80,60,"png","qx"],"qx/decoration/Modern/form/button-pressed-b.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-12],"qx/decoration/Modern/form/button-pressed-bl.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-52],"qx/decoration/Modern/form/button-pressed-br.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-20],"qx/decoration/Modern/form/button-pressed-c.png":[40,52,"png","qx"],"qx/decoration/Modern/form/button-pressed-l.png":[4,52,"png","qx","qx/decoration/Modern/button-lr-combined.png",-52,0],"qx/decoration/Modern/form/button-pressed-r.png":[4,52,"png","qx","qx/decoration/Modern/button-lr-combined.png",-12,0],"qx/decoration/Modern/form/button-pressed-t.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-100],"qx/decoration/Modern/form/button-pressed-tl.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-172],"qx/decoration/Modern/form/button-pressed-tr.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-64],"qx/decoration/Modern/form/button-pressed.png":[80,60,"png","qx"],"qx/decoration/Modern/form/button-r.png":[4,52,"png","qx","qx/decoration/Modern/button-lr-combined.png",0,0],"qx/decoration/Modern/form/button-t.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-92],"qx/decoration/Modern/form/button-tl.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-120],"qx/decoration/Modern/form/button-tr.png":[4,4,"png","qx","qx/decoration/Modern/button-tb-combined.png",0,-180],"qx/decoration/Modern/form/button.png":[80,60,"png","qx"],"qx/decoration/Modern/form/checkbox-checked-disabled.png":[14,14,"png","qx","qx/decoration/Modern/checkradio-combined.png",-126,0],"qx/decoration/Modern/form/checkbox-checked-focused-invalid.png":[14,14,"png","qx","qx/decoration/Modern/checkradio-combined.png",-322,0],"qx/decoration/Modern/form/checkbox-checked-focused.png":[14,14,"png","qx","qx/decoration/Modern/checkradio-combined.png",-294,0],"qx/decoration/Modern/form/checkbox-checked-hovered-invalid.png":[14,14,"png","qx","qx/decoration/Modern/checkradio-combined.png",-364,0],"qx/decoration/Modern/form/checkbox-checked-hovered.png":[14,14,"png","qx","qx/decoration/Modern/checkradio-combined.png",-490,0],"qx/decoration/Modern/form/checkbox-checked-invalid.png":[14,14,"png","qx","qx/decoration/Modern/checkradio-combined.png",-224,0],"qx/decoration/Modern/form/checkbox-checked-pressed-invalid.png":[14,14,"png","qx","qx/decoration/Modern/checkradio-combined.png",-378,0],"qx/decoration/Modern/form/checkbox-checked-pressed.png":[14,14,"png","qx","qx/decoration/Modern/checkradio-combined.png",-84,0],"qx/decoration/Modern/form/checkbox-checked.png":[14,14,"png","qx","qx/decoration/Modern/checkradio-combined.png",-182,0],"qx/decoration/Modern/form/checkbox-disabled.png":[14,14,"png","qx","qx/decoration/Modern/checkradio-combined.png",-42,0],"qx/decoration/Modern/form/checkbox-focused-invalid.png":[14,14,"png","qx","qx/decoration/Modern/checkradio-combined.png",-392,0],"qx/decoration/Modern/form/checkbox-focused.png":[14,14,"png","qx","qx/decoration/Modern/checkradio-combined.png",-210,0],"qx/decoration/Modern/form/checkbox-hovered-invalid.png":[14,14,"png","qx","qx/decoration/Modern/checkradio-combined.png",-14,0],"qx/decoration/Modern/form/checkbox-hovered.png":[14,14,"png","qx","qx/decoration/Modern/checkradio-combined.png",-238,0],"qx/decoration/Modern/form/checkbox-invalid.png":[14,14,"png","qx","qx/decoration/Modern/checkradio-combined.png",-462,0],"qx/decoration/Modern/form/checkbox-pressed-invalid.png":[14,14,"png","qx","qx/decoration/Modern/checkradio-combined.png",-112,0],"qx/decoration/Modern/form/checkbox-pressed.png":[14,14,"png","qx","qx/decoration/Modern/checkradio-combined.png",-448,0],"qx/decoration/Modern/form/checkbox-undetermined-disabled.png":[14,14,"png","qx"],"qx/decoration/Modern/form/checkbox-undetermined-focused-invalid.png":[14,14,"png","qx"],"qx/decoration/Modern/form/checkbox-undetermined-focused.png":[14,14,"png","qx"],"qx/decoration/Modern/form/checkbox-undetermined-hovered-invalid.png":[14,14,"png","qx"],"qx/decoration/Modern/form/checkbox-undetermined-hovered.png":[14,14,"png","qx"],"qx/decoration/Modern/form/checkbox-undetermined-invalid.png":[14,14,"png","qx"],"qx/decoration/Modern/form/checkbox-undetermined.png":[14,14,"png","qx"],"qx/decoration/Modern/form/checkbox.png":[14,14,"png","qx","qx/decoration/Modern/checkradio-combined.png",-140,0],"qx/decoration/Modern/form/checked-disabled.png":[6,6,"png","qx"],"qx/decoration/Modern/form/checked.png":[6,6,"png","qx"],"qx/decoration/Modern/form/input-focused.png":[40,12,"png","qx"],"qx/decoration/Modern/form/input.png":[84,12,"png","qx"],"qx/decoration/Modern/form/radiobutton-checked-disabled.png":[14,14,"png","qx","qx/decoration/Modern/checkradio-combined.png",-196,0],"qx/decoration/Modern/form/radiobutton-checked-focused-invalid.png":[14,14,"png","qx","qx/decoration/Modern/checkradio-combined.png",-168,0],"qx/decoration/Modern/form/radiobutton-checked-focused.png":[14,14,"png","qx","qx/decoration/Modern/checkradio-combined.png",-98,0],"qx/decoration/Modern/form/radiobutton-checked-hovered-invalid.png":[14,14,"png","qx","qx/decoration/Modern/checkradio-combined.png",-308,0],"qx/decoration/Modern/form/radiobutton-checked-hovered.png":[14,14,"png","qx","qx/decoration/Modern/checkradio-combined.png",-406,0],"qx/decoration/Modern/form/radiobutton-checked-invalid.png":[14,14,"png","qx","qx/decoration/Modern/checkradio-combined.png",-28,0],"qx/decoration/Modern/form/radiobutton-checked-pressed-invalid.png":[14,14,"png","qx","qx/decoration/Modern/checkradio-combined.png",-350,0],"qx/decoration/Modern/form/radiobutton-checked-pressed.png":[14,14,"png","qx","qx/decoration/Modern/checkradio-combined.png",-266,0],"qx/decoration/Modern/form/radiobutton-checked.png":[14,14,"png","qx","qx/decoration/Modern/checkradio-combined.png",-252,0],"qx/decoration/Modern/form/radiobutton-disabled.png":[14,14,"png","qx","qx/decoration/Modern/checkradio-combined.png",-336,0],"qx/decoration/Modern/form/radiobutton-focused-invalid.png":[14,14,"png","qx","qx/decoration/Modern/checkradio-combined.png",-476,0],"qx/decoration/Modern/form/radiobutton-focused.png":[14,14,"png","qx","qx/decoration/Modern/checkradio-combined.png",-420,0],"qx/decoration/Modern/form/radiobutton-hovered-invalid.png":[14,14,"png","qx","qx/decoration/Modern/checkradio-combined.png",-56,0],"qx/decoration/Modern/form/radiobutton-hovered.png":[14,14,"png","qx","qx/decoration/Modern/checkradio-combined.png",0,0],"qx/decoration/Modern/form/radiobutton-invalid.png":[14,14,"png","qx","qx/decoration/Modern/checkradio-combined.png",-154,0],"qx/decoration/Modern/form/radiobutton-pressed-invalid.png":[14,14,"png","qx","qx/decoration/Modern/checkradio-combined.png",-434,0],"qx/decoration/Modern/form/radiobutton-pressed.png":[14,14,"png","qx","qx/decoration/Modern/checkradio-combined.png",-280,0],"qx/decoration/Modern/form/radiobutton.png":[14,14,"png","qx","qx/decoration/Modern/checkradio-combined.png",-70,0],"qx/decoration/Modern/form/tooltip-error-arrow.png":[11,14,"png","qx"],"qx/decoration/Modern/form/tooltip-error-b.png":[6,6,"png","qx","qx/decoration/Modern/tooltip-error-tb-combined.png",0,-30],"qx/decoration/Modern/form/tooltip-error-bl.png":[6,6,"png","qx","qx/decoration/Modern/tooltip-error-tb-combined.png",0,-24],"qx/decoration/Modern/form/tooltip-error-br.png":[6,6,"png","qx","qx/decoration/Modern/tooltip-error-tb-combined.png",0,0],"qx/decoration/Modern/form/tooltip-error-c.png":[40,18,"png","qx"],"qx/decoration/Modern/form/tooltip-error-l.png":[6,18,"png","qx","qx/decoration/Modern/tooltip-error-lr-combined.png",-6,0],"qx/decoration/Modern/form/tooltip-error-r.png":[6,18,"png","qx","qx/decoration/Modern/tooltip-error-lr-combined.png",0,0],"qx/decoration/Modern/form/tooltip-error-t.png":[6,6,"png","qx","qx/decoration/Modern/tooltip-error-tb-combined.png",0,-6],"qx/decoration/Modern/form/tooltip-error-tl.png":[6,6,"png","qx","qx/decoration/Modern/tooltip-error-tb-combined.png",0,-18],"qx/decoration/Modern/form/tooltip-error-tr.png":[6,6,"png","qx","qx/decoration/Modern/tooltip-error-tb-combined.png",0,-12],"qx/decoration/Modern/form/tooltip-error.png":[127,30,"png","qx"],"qx/decoration/Modern/form/undetermined-disabled.png":[6,2,"png","qx"],"qx/decoration/Modern/form/undetermined.png":[6,2,"png","qx"],"qx/decoration/Modern/group-item.png":[110,20,"png","qx"],"qx/decoration/Modern/groupbox-lr-combined.png":[8,51,"png","qx"],"qx/decoration/Modern/groupbox-tb-combined.png":[4,24,"png","qx"],"qx/decoration/Modern/groupbox/groupbox-b.png":[4,4,"png","qx","qx/decoration/Modern/groupbox-tb-combined.png",0,-12],"qx/decoration/Modern/groupbox/groupbox-bl.png":[4,4,"png","qx","qx/decoration/Modern/groupbox-tb-combined.png",0,-16],"qx/decoration/Modern/groupbox/groupbox-br.png":[4,4,"png","qx","qx/decoration/Modern/groupbox-tb-combined.png",0,-8],"qx/decoration/Modern/groupbox/groupbox-c.png":[40,51,"png","qx"],"qx/decoration/Modern/groupbox/groupbox-l.png":[4,51,"png","qx","qx/decoration/Modern/groupbox-lr-combined.png",-4,0],"qx/decoration/Modern/groupbox/groupbox-r.png":[4,51,"png","qx","qx/decoration/Modern/groupbox-lr-combined.png",0,0],"qx/decoration/Modern/groupbox/groupbox-t.png":[4,4,"png","qx","qx/decoration/Modern/groupbox-tb-combined.png",0,-4],"qx/decoration/Modern/groupbox/groupbox-tl.png":[4,4,"png","qx","qx/decoration/Modern/groupbox-tb-combined.png",0,0],"qx/decoration/Modern/groupbox/groupbox-tr.png":[4,4,"png","qx","qx/decoration/Modern/groupbox-tb-combined.png",0,-20],"qx/decoration/Modern/groupbox/groupbox.png":[255,59,"png","qx"],"qx/decoration/Modern/menu-background-combined.png":[80,49,"png","qx"],"qx/decoration/Modern/menu-checkradio-combined.gif":[64,7,"gif","qx"],"qx/decoration/Modern/menu/background.png":[40,49,"png","qx","qx/decoration/Modern/menu-background-combined.png",-40,0],"qx/decoration/Modern/menu/bar-background.png":[40,20,"png","qx","qx/decoration/Modern/menu-background-combined.png",0,0],"qx/decoration/Modern/menu/checkbox-invert.gif":[16,7,"gif","qx","qx/decoration/Modern/menu-checkradio-combined.gif",-16,0],"qx/decoration/Modern/menu/checkbox.gif":[16,7,"gif","qx","qx/decoration/Modern/menu-checkradio-combined.gif",-48,0],"qx/decoration/Modern/menu/radiobutton-invert.gif":[16,5,"gif","qx","qx/decoration/Modern/menu-checkradio-combined.gif",-32,0],"qx/decoration/Modern/menu/radiobutton.gif":[16,5,"gif","qx","qx/decoration/Modern/menu-checkradio-combined.gif",0,0],"qx/decoration/Modern/pane-lr-combined.png":[12,238,"png","qx"],"qx/decoration/Modern/pane-tb-combined.png":[6,36,"png","qx"],"qx/decoration/Modern/pane/pane-b.png":[6,6,"png","qx","qx/decoration/Modern/pane-tb-combined.png",0,-30],"qx/decoration/Modern/pane/pane-bl.png":[6,6,"png","qx","qx/decoration/Modern/pane-tb-combined.png",0,-18],"qx/decoration/Modern/pane/pane-br.png":[6,6,"png","qx","qx/decoration/Modern/pane-tb-combined.png",0,-12],"qx/decoration/Modern/pane/pane-c.png":[40,238,"png","qx"],"qx/decoration/Modern/pane/pane-l.png":[6,238,"png","qx","qx/decoration/Modern/pane-lr-combined.png",0,0],"qx/decoration/Modern/pane/pane-r.png":[6,238,"png","qx","qx/decoration/Modern/pane-lr-combined.png",-6,0],"qx/decoration/Modern/pane/pane-t.png":[6,6,"png","qx","qx/decoration/Modern/pane-tb-combined.png",0,0],"qx/decoration/Modern/pane/pane-tl.png":[6,6,"png","qx","qx/decoration/Modern/pane-tb-combined.png",0,-24],"qx/decoration/Modern/pane/pane-tr.png":[6,6,"png","qx","qx/decoration/Modern/pane-tb-combined.png",0,-6],"qx/decoration/Modern/pane/pane.png":[185,250,"png","qx"],"qx/decoration/Modern/scrollbar-combined.png":[54,12,"png","qx"],"qx/decoration/Modern/scrollbar/scrollbar-bg-horizontal.png":[76,15,"png","qx"],"qx/decoration/Modern/scrollbar/scrollbar-bg-pressed-horizontal.png":[19,10,"png","qx"],"qx/decoration/Modern/scrollbar/scrollbar-bg-pressed-vertical.png":[10,19,"png","qx"],"qx/decoration/Modern/scrollbar/scrollbar-bg-vertical.png":[15,76,"png","qx"],"qx/decoration/Modern/scrollbar/scrollbar-button-bg-horizontal.png":[12,10,"png","qx","qx/decoration/Modern/scrollbar-combined.png",-34,0],"qx/decoration/Modern/scrollbar/scrollbar-button-bg-vertical.png":[10,12,"png","qx","qx/decoration/Modern/scrollbar-combined.png",-6,0],"qx/decoration/Modern/scrollbar/scrollbar-down.png":[6,4,"png","qx","qx/decoration/Modern/scrollbar-combined.png",-28,0],"qx/decoration/Modern/scrollbar/scrollbar-left.png":[4,6,"png","qx","qx/decoration/Modern/scrollbar-combined.png",-50,0],"qx/decoration/Modern/scrollbar/scrollbar-right.png":[4,6,"png","qx","qx/decoration/Modern/scrollbar-combined.png",-46,0],"qx/decoration/Modern/scrollbar/scrollbar-up.png":[6,4,"png","qx","qx/decoration/Modern/scrollbar-combined.png",0,0],"qx/decoration/Modern/scrollbar/slider-knob-background.png":[12,10,"png","qx","qx/decoration/Modern/scrollbar-combined.png",-16,0],"qx/decoration/Modern/selection.png":[110,20,"png","qx"],"qx/decoration/Modern/shadow-lr-combined.png":[30,382,"png","qx"],"qx/decoration/Modern/shadow-small-lr-combined.png":[10,136,"png","qx"],"qx/decoration/Modern/shadow-small-tb-combined.png":[5,30,"png","qx"],"qx/decoration/Modern/shadow-tb-combined.png":[15,90,"png","qx"],"qx/decoration/Modern/shadow/shadow-b.png":[15,15,"png","qx","qx/decoration/Modern/shadow-tb-combined.png",0,-30],"qx/decoration/Modern/shadow/shadow-bl.png":[15,15,"png","qx","qx/decoration/Modern/shadow-tb-combined.png",0,-15],"qx/decoration/Modern/shadow/shadow-br.png":[15,15,"png","qx","qx/decoration/Modern/shadow-tb-combined.png",0,-45],"qx/decoration/Modern/shadow/shadow-c.png":[40,382,"png","qx"],"qx/decoration/Modern/shadow/shadow-l.png":[15,382,"png","qx","qx/decoration/Modern/shadow-lr-combined.png",0,0],"qx/decoration/Modern/shadow/shadow-r.png":[15,382,"png","qx","qx/decoration/Modern/shadow-lr-combined.png",-15,0],"qx/decoration/Modern/shadow/shadow-small-b.png":[5,5,"png","qx","qx/decoration/Modern/shadow-small-tb-combined.png",0,-20],"qx/decoration/Modern/shadow/shadow-small-bl.png":[5,5,"png","qx","qx/decoration/Modern/shadow-small-tb-combined.png",0,-15],"qx/decoration/Modern/shadow/shadow-small-br.png":[5,5,"png","qx","qx/decoration/Modern/shadow-small-tb-combined.png",0,-10],"qx/decoration/Modern/shadow/shadow-small-c.png":[40,136,"png","qx"],"qx/decoration/Modern/shadow/shadow-small-l.png":[5,136,"png","qx","qx/decoration/Modern/shadow-small-lr-combined.png",0,0],"qx/decoration/Modern/shadow/shadow-small-r.png":[5,136,"png","qx","qx/decoration/Modern/shadow-small-lr-combined.png",-5,0],"qx/decoration/Modern/shadow/shadow-small-t.png":[5,5,"png","qx","qx/decoration/Modern/shadow-small-tb-combined.png",0,-5],"qx/decoration/Modern/shadow/shadow-small-tl.png":[5,5,"png","qx","qx/decoration/Modern/shadow-small-tb-combined.png",0,0],"qx/decoration/Modern/shadow/shadow-small-tr.png":[5,5,"png","qx","qx/decoration/Modern/shadow-small-tb-combined.png",0,-25],"qx/decoration/Modern/shadow/shadow-small.png":[114,146,"png","qx"],"qx/decoration/Modern/shadow/shadow-t.png":[15,15,"png","qx","qx/decoration/Modern/shadow-tb-combined.png",0,-60],"qx/decoration/Modern/shadow/shadow-tl.png":[15,15,"png","qx","qx/decoration/Modern/shadow-tb-combined.png",0,-75],"qx/decoration/Modern/shadow/shadow-tr.png":[15,15,"png","qx","qx/decoration/Modern/shadow-tb-combined.png",0,0],"qx/decoration/Modern/shadow/shadow.png":[381,412,"png","qx"],"qx/decoration/Modern/splitpane-knobs-combined.png":[8,9,"png","qx"],"qx/decoration/Modern/splitpane/knob-horizontal.png":[1,8,"png","qx","qx/decoration/Modern/splitpane-knobs-combined.png",0,-1],"qx/decoration/Modern/splitpane/knob-vertical.png":[8,1,"png","qx","qx/decoration/Modern/splitpane-knobs-combined.png",0,0],"qx/decoration/Modern/table-combined.png":[94,18,"png","qx"],"qx/decoration/Modern/table/ascending.png":[8,5,"png","qx","qx/decoration/Modern/table-combined.png",0,0],"qx/decoration/Modern/table/boolean-false.png":[14,14,"png","qx","qx/decoration/Modern/table-combined.png",-80,0],"qx/decoration/Modern/table/boolean-true.png":[14,14,"png","qx","qx/decoration/Modern/table-combined.png",-26,0],"qx/decoration/Modern/table/descending.png":[8,5,"png","qx","qx/decoration/Modern/table-combined.png",-18,0],"qx/decoration/Modern/table/header-cell.png":[40,18,"png","qx","qx/decoration/Modern/table-combined.png",-40,0],"qx/decoration/Modern/table/select-column-order.png":[10,9,"png","qx","qx/decoration/Modern/table-combined.png",-8,0],"qx/decoration/Modern/tabview-button-bottom-active-lr-combined.png":[10,14,"png","qx"],"qx/decoration/Modern/tabview-button-bottom-active-tb-combined.png":[5,30,"png","qx"],"qx/decoration/Modern/tabview-button-bottom-inactive-b-combined.png":[3,9,"png","qx"],"qx/decoration/Modern/tabview-button-bottom-inactive-lr-combined.png":[6,15,"png","qx"],"qx/decoration/Modern/tabview-button-bottom-inactive-t-combined.png":[3,9,"png","qx"],"qx/decoration/Modern/tabview-button-left-active-lr-combined.png":[10,37,"png","qx"],"qx/decoration/Modern/tabview-button-left-active-tb-combined.png":[5,30,"png","qx"],"qx/decoration/Modern/tabview-button-left-inactive-b-combined.png":[3,9,"png","qx"],"qx/decoration/Modern/tabview-button-left-inactive-lr-combined.png":[6,39,"png","qx"],"qx/decoration/Modern/tabview-button-left-inactive-t-combined.png":[3,9,"png","qx"],"qx/decoration/Modern/tabview-button-right-active-lr-combined.png":[10,37,"png","qx"],"qx/decoration/Modern/tabview-button-right-active-tb-combined.png":[5,30,"png","qx"],"qx/decoration/Modern/tabview-button-right-inactive-b-combined.png":[3,9,"png","qx"],"qx/decoration/Modern/tabview-button-right-inactive-lr-combined.png":[6,39,"png","qx"],"qx/decoration/Modern/tabview-button-right-inactive-t-combined.png":[3,9,"png","qx"],"qx/decoration/Modern/tabview-button-top-active-lr-combined.png":[10,12,"png","qx"],"qx/decoration/Modern/tabview-button-top-active-tb-combined.png":[5,30,"png","qx"],"qx/decoration/Modern/tabview-button-top-inactive-b-combined.png":[3,9,"png","qx"],"qx/decoration/Modern/tabview-button-top-inactive-lr-combined.png":[6,15,"png","qx"],"qx/decoration/Modern/tabview-button-top-inactive-t-combined.png":[3,9,"png","qx"],"qx/decoration/Modern/tabview-pane-lr-combined.png":[60,2,"png","qx"],"qx/decoration/Modern/tabview-pane-tb-combined.png":[30,180,"png","qx"],"qx/decoration/Modern/tabview/tab-button-bottom-active-b.png":[5,5,"png","qx","qx/decoration/Modern/tabview-button-bottom-active-tb-combined.png",0,-10],"qx/decoration/Modern/tabview/tab-button-bottom-active-bl.png":[5,5,"png","qx","qx/decoration/Modern/tabview-button-bottom-active-tb-combined.png",0,-15],"qx/decoration/Modern/tabview/tab-button-bottom-active-br.png":[5,5,"png","qx","qx/decoration/Modern/tabview-button-bottom-active-tb-combined.png",0,-5],"qx/decoration/Modern/tabview/tab-button-bottom-active-c.png":[40,14,"png","qx"],"qx/decoration/Modern/tabview/tab-button-bottom-active-l.png":[5,14,"png","qx","qx/decoration/Modern/tabview-button-bottom-active-lr-combined.png",0,0],"qx/decoration/Modern/tabview/tab-button-bottom-active-r.png":[5,14,"png","qx","qx/decoration/Modern/tabview-button-bottom-active-lr-combined.png",-5,0],"qx/decoration/Modern/tabview/tab-button-bottom-active-t.png":[5,5,"png","qx","qx/decoration/Modern/tabview-button-bottom-active-tb-combined.png",0,-20],"qx/decoration/Modern/tabview/tab-button-bottom-active-tl.png":[5,5,"png","qx","qx/decoration/Modern/tabview-button-bottom-active-tb-combined.png",0,-25],"qx/decoration/Modern/tabview/tab-button-bottom-active-tr.png":[5,5,"png","qx","qx/decoration/Modern/tabview-button-bottom-active-tb-combined.png",0,0],"qx/decoration/Modern/tabview/tab-button-bottom-active.png":[49,24,"png","qx"],"qx/decoration/Modern/tabview/tab-button-bottom-inactive-b.png":[3,3,"png","qx","qx/decoration/Modern/tabview-button-bottom-inactive-b-combined.png",0,0],"qx/decoration/Modern/tabview/tab-button-bottom-inactive-bl.png":[3,3,"png","qx","qx/decoration/Modern/tabview-button-bottom-inactive-b-combined.png",0,-6],"qx/decoration/Modern/tabview/tab-button-bottom-inactive-br.png":[3,3,"png","qx","qx/decoration/Modern/tabview-button-bottom-inactive-b-combined.png",0,-3],"qx/decoration/Modern/tabview/tab-button-bottom-inactive-c.png":[40,15,"png","qx"],"qx/decoration/Modern/tabview/tab-button-bottom-inactive-l.png":[3,15,"png","qx","qx/decoration/Modern/tabview-button-bottom-inactive-lr-combined.png",-3,0],"qx/decoration/Modern/tabview/tab-button-bottom-inactive-r.png":[3,15,"png","qx","qx/decoration/Modern/tabview-button-bottom-inactive-lr-combined.png",0,0],"qx/decoration/Modern/tabview/tab-button-bottom-inactive-t.png":[3,3,"png","qx","qx/decoration/Modern/tabview-button-bottom-inactive-t-combined.png",0,-3],"qx/decoration/Modern/tabview/tab-button-bottom-inactive-tl.png":[3,3,"png","qx","qx/decoration/Modern/tabview-button-bottom-inactive-t-combined.png",0,0],"qx/decoration/Modern/tabview/tab-button-bottom-inactive-tr.png":[3,3,"png","qx","qx/decoration/Modern/tabview-button-bottom-inactive-t-combined.png",0,-6],"qx/decoration/Modern/tabview/tab-button-bottom-inactive.png":[45,21,"png","qx"],"qx/decoration/Modern/tabview/tab-button-left-active-b.png":[5,5,"png","qx","qx/decoration/Modern/tabview-button-left-active-tb-combined.png",0,-5],"qx/decoration/Modern/tabview/tab-button-left-active-bl.png":[5,5,"png","qx","qx/decoration/Modern/tabview-button-left-active-tb-combined.png",0,0],"qx/decoration/Modern/tabview/tab-button-left-active-br.png":[5,5,"png","qx","qx/decoration/Modern/tabview-button-left-active-tb-combined.png",0,-25],"qx/decoration/Modern/tabview/tab-button-left-active-c.png":[40,37,"png","qx"],"qx/decoration/Modern/tabview/tab-button-left-active-l.png":[5,37,"png","qx","qx/decoration/Modern/tabview-button-left-active-lr-combined.png",0,0],"qx/decoration/Modern/tabview/tab-button-left-active-r.png":[5,37,"png","qx","qx/decoration/Modern/tabview-button-left-active-lr-combined.png",-5,0],"qx/decoration/Modern/tabview/tab-button-left-active-t.png":[5,5,"png","qx","qx/decoration/Modern/tabview-button-left-active-tb-combined.png",0,-15],"qx/decoration/Modern/tabview/tab-button-left-active-tl.png":[5,5,"png","qx","qx/decoration/Modern/tabview-button-left-active-tb-combined.png",0,-10],"qx/decoration/Modern/tabview/tab-button-left-active-tr.png":[5,5,"png","qx","qx/decoration/Modern/tabview-button-left-active-tb-combined.png",0,-20],"qx/decoration/Modern/tabview/tab-button-left-active.png":[22,47,"png","qx"],"qx/decoration/Modern/tabview/tab-button-left-inactive-b.png":[3,3,"png","qx","qx/decoration/Modern/tabview-button-left-inactive-b-combined.png",0,0],"qx/decoration/Modern/tabview/tab-button-left-inactive-bl.png":[3,3,"png","qx","qx/decoration/Modern/tabview-button-left-inactive-b-combined.png",0,-6],"qx/decoration/Modern/tabview/tab-button-left-inactive-br.png":[3,3,"png","qx","qx/decoration/Modern/tabview-button-left-inactive-b-combined.png",0,-3],"qx/decoration/Modern/tabview/tab-button-left-inactive-c.png":[40,39,"png","qx"],"qx/decoration/Modern/tabview/tab-button-left-inactive-l.png":[3,39,"png","qx","qx/decoration/Modern/tabview-button-left-inactive-lr-combined.png",-3,0],"qx/decoration/Modern/tabview/tab-button-left-inactive-r.png":[3,39,"png","qx","qx/decoration/Modern/tabview-button-left-inactive-lr-combined.png",0,0],"qx/decoration/Modern/tabview/tab-button-left-inactive-t.png":[3,3,"png","qx","qx/decoration/Modern/tabview-button-left-inactive-t-combined.png",0,-3],"qx/decoration/Modern/tabview/tab-button-left-inactive-tl.png":[3,3,"png","qx","qx/decoration/Modern/tabview-button-left-inactive-t-combined.png",0,0],"qx/decoration/Modern/tabview/tab-button-left-inactive-tr.png":[3,3,"png","qx","qx/decoration/Modern/tabview-button-left-inactive-t-combined.png",0,-6],"qx/decoration/Modern/tabview/tab-button-left-inactive.png":[20,45,"png","qx"],"qx/decoration/Modern/tabview/tab-button-right-active-b.png":[5,5,"png","qx","qx/decoration/Modern/tabview-button-right-active-tb-combined.png",0,-25],"qx/decoration/Modern/tabview/tab-button-right-active-bl.png":[5,5,"png","qx","qx/decoration/Modern/tabview-button-right-active-tb-combined.png",0,0],"qx/decoration/Modern/tabview/tab-button-right-active-br.png":[5,5,"png","qx","qx/decoration/Modern/tabview-button-right-active-tb-combined.png",0,-20],"qx/decoration/Modern/tabview/tab-button-right-active-c.png":[40,37,"png","qx"],"qx/decoration/Modern/tabview/tab-button-right-active-l.png":[5,37,"png","qx","qx/decoration/Modern/tabview-button-right-active-lr-combined.png",0,0],"qx/decoration/Modern/tabview/tab-button-right-active-r.png":[5,37,"png","qx","qx/decoration/Modern/tabview-button-right-active-lr-combined.png",-5,0],"qx/decoration/Modern/tabview/tab-button-right-active-t.png":[5,5,"png","qx","qx/decoration/Modern/tabview-button-right-active-tb-combined.png",0,-5],"qx/decoration/Modern/tabview/tab-button-right-active-tl.png":[5,5,"png","qx","qx/decoration/Modern/tabview-button-right-active-tb-combined.png",0,-15],"qx/decoration/Modern/tabview/tab-button-right-active-tr.png":[5,5,"png","qx","qx/decoration/Modern/tabview-button-right-active-tb-combined.png",0,-10],"qx/decoration/Modern/tabview/tab-button-right-active.png":[22,47,"png","qx"],"qx/decoration/Modern/tabview/tab-button-right-inactive-b.png":[3,3,"png","qx","qx/decoration/Modern/tabview-button-right-inactive-b-combined.png",0,-3],"qx/decoration/Modern/tabview/tab-button-right-inactive-bl.png":[3,3,"png","qx","qx/decoration/Modern/tabview-button-right-inactive-b-combined.png",0,0],"qx/decoration/Modern/tabview/tab-button-right-inactive-br.png":[3,3,"png","qx","qx/decoration/Modern/tabview-button-right-inactive-b-combined.png",0,-6],"qx/decoration/Modern/tabview/tab-button-right-inactive-c.png":[40,39,"png","qx"],"qx/decoration/Modern/tabview/tab-button-right-inactive-l.png":[3,39,"png","qx","qx/decoration/Modern/tabview-button-right-inactive-lr-combined.png",0,0],"qx/decoration/Modern/tabview/tab-button-right-inactive-r.png":[3,39,"png","qx","qx/decoration/Modern/tabview-button-right-inactive-lr-combined.png",-3,0],"qx/decoration/Modern/tabview/tab-button-right-inactive-t.png":[3,3,"png","qx","qx/decoration/Modern/tabview-button-right-inactive-t-combined.png",0,0],"qx/decoration/Modern/tabview/tab-button-right-inactive-tl.png":[3,3,"png","qx","qx/decoration/Modern/tabview-button-right-inactive-t-combined.png",0,-3],"qx/decoration/Modern/tabview/tab-button-right-inactive-tr.png":[3,3,"png","qx","qx/decoration/Modern/tabview-button-right-inactive-t-combined.png",0,-6],"qx/decoration/Modern/tabview/tab-button-right-inactive.png":[20,45,"png","qx"],"qx/decoration/Modern/tabview/tab-button-top-active-b.png":[5,5,"png","qx","qx/decoration/Modern/tabview-button-top-active-tb-combined.png",0,-20],"qx/decoration/Modern/tabview/tab-button-top-active-bl.png":[5,5,"png","qx","qx/decoration/Modern/tabview-button-top-active-tb-combined.png",0,-15],"qx/decoration/Modern/tabview/tab-button-top-active-br.png":[5,5,"png","qx","qx/decoration/Modern/tabview-button-top-active-tb-combined.png",0,-10],"qx/decoration/Modern/tabview/tab-button-top-active-c.png":[40,14,"png","qx"],"qx/decoration/Modern/tabview/tab-button-top-active-l.png":[5,12,"png","qx","qx/decoration/Modern/tabview-button-top-active-lr-combined.png",0,0],"qx/decoration/Modern/tabview/tab-button-top-active-r.png":[5,12,"png","qx","qx/decoration/Modern/tabview-button-top-active-lr-combined.png",-5,0],"qx/decoration/Modern/tabview/tab-button-top-active-t.png":[5,5,"png","qx","qx/decoration/Modern/tabview-button-top-active-tb-combined.png",0,0],"qx/decoration/Modern/tabview/tab-button-top-active-tl.png":[5,5,"png","qx","qx/decoration/Modern/tabview-button-top-active-tb-combined.png",0,-25],"qx/decoration/Modern/tabview/tab-button-top-active-tr.png":[5,5,"png","qx","qx/decoration/Modern/tabview-button-top-active-tb-combined.png",0,-5],"qx/decoration/Modern/tabview/tab-button-top-active.png":[48,22,"png","qx"],"qx/decoration/Modern/tabview/tab-button-top-inactive-b.png":[3,3,"png","qx","qx/decoration/Modern/tabview-button-top-inactive-b-combined.png",0,-6],"qx/decoration/Modern/tabview/tab-button-top-inactive-bl.png":[3,3,"png","qx","qx/decoration/Modern/tabview-button-top-inactive-b-combined.png",0,-3],"qx/decoration/Modern/tabview/tab-button-top-inactive-br.png":[3,3,"png","qx","qx/decoration/Modern/tabview-button-top-inactive-b-combined.png",0,0],"qx/decoration/Modern/tabview/tab-button-top-inactive-c.png":[40,15,"png","qx"],"qx/decoration/Modern/tabview/tab-button-top-inactive-l.png":[3,15,"png","qx","qx/decoration/Modern/tabview-button-top-inactive-lr-combined.png",0,0],"qx/decoration/Modern/tabview/tab-button-top-inactive-r.png":[3,15,"png","qx","qx/decoration/Modern/tabview-button-top-inactive-lr-combined.png",-3,0],"qx/decoration/Modern/tabview/tab-button-top-inactive-t.png":[3,3,"png","qx","qx/decoration/Modern/tabview-button-top-inactive-t-combined.png",0,-3],"qx/decoration/Modern/tabview/tab-button-top-inactive-tl.png":[3,3,"png","qx","qx/decoration/Modern/tabview-button-top-inactive-t-combined.png",0,0],"qx/decoration/Modern/tabview/tab-button-top-inactive-tr.png":[3,3,"png","qx","qx/decoration/Modern/tabview-button-top-inactive-t-combined.png",0,-6],"qx/decoration/Modern/tabview/tab-button-top-inactive.png":[45,21,"png","qx"],"qx/decoration/Modern/tabview/tabview-pane-b.png":[30,30,"png","qx","qx/decoration/Modern/tabview-pane-tb-combined.png",0,-60],"qx/decoration/Modern/tabview/tabview-pane-bl.png":[30,30,"png","qx","qx/decoration/Modern/tabview-pane-tb-combined.png",0,0],"qx/decoration/Modern/tabview/tabview-pane-br.png":[30,30,"png","qx","qx/decoration/Modern/tabview-pane-tb-combined.png",0,-120],"qx/decoration/Modern/tabview/tabview-pane-c.png":[40,120,"png","qx"],"qx/decoration/Modern/tabview/tabview-pane-l.png":[30,2,"png","qx","qx/decoration/Modern/tabview-pane-lr-combined.png",0,0],"qx/decoration/Modern/tabview/tabview-pane-r.png":[30,2,"png","qx","qx/decoration/Modern/tabview-pane-lr-combined.png",-30,0],"qx/decoration/Modern/tabview/tabview-pane-t.png":[30,30,"png","qx","qx/decoration/Modern/tabview-pane-tb-combined.png",0,-150],"qx/decoration/Modern/tabview/tabview-pane-tl.png":[30,30,"png","qx","qx/decoration/Modern/tabview-pane-tb-combined.png",0,-30],"qx/decoration/Modern/tabview/tabview-pane-tr.png":[30,30,"png","qx","qx/decoration/Modern/tabview-pane-tb-combined.png",0,-90],"qx/decoration/Modern/tabview/tabview-pane.png":[185,250,"png","qx"],"qx/decoration/Modern/toolbar-combined.png":[80,130,"png","qx"],"qx/decoration/Modern/toolbar/toolbar-gradient-blue.png":[40,130,"png","qx","qx/decoration/Modern/toolbar-combined.png",-40,0],"qx/decoration/Modern/toolbar/toolbar-gradient.png":[40,130,"png","qx","qx/decoration/Modern/toolbar-combined.png",0,0],"qx/decoration/Modern/toolbar/toolbar-handle-knob.gif":[1,8,"gif","qx"],"qx/decoration/Modern/toolbar/toolbar-part.gif":[7,1,"gif","qx"],"qx/decoration/Modern/tooltip-error-lr-combined.png":[12,18,"png","qx"],"qx/decoration/Modern/tooltip-error-tb-combined.png":[6,36,"png","qx"],"qx/decoration/Modern/tree-combined.png":[32,8,"png","qx"],"qx/decoration/Modern/tree/closed-selected.png":[8,8,"png","qx","qx/decoration/Modern/tree-combined.png",-24,0],"qx/decoration/Modern/tree/closed.png":[8,8,"png","qx","qx/decoration/Modern/tree-combined.png",-16,0],"qx/decoration/Modern/tree/open-selected.png":[8,8,"png","qx","qx/decoration/Modern/tree-combined.png",-8,0],"qx/decoration/Modern/tree/open.png":[8,8,"png","qx","qx/decoration/Modern/tree-combined.png",0,0],"qx/decoration/Modern/window-captionbar-buttons-combined.png":[108,9,"png","qx"],"qx/decoration/Modern/window-captionbar-lr-active-combined.png":[12,9,"png","qx"],"qx/decoration/Modern/window-captionbar-lr-inactive-combined.png":[12,9,"png","qx"],"qx/decoration/Modern/window-captionbar-tb-active-combined.png":[6,36,"png","qx"],"qx/decoration/Modern/window-captionbar-tb-inactive-combined.png":[6,36,"png","qx"],"qx/decoration/Modern/window-statusbar-lr-combined.png":[8,7,"png","qx"],"qx/decoration/Modern/window-statusbar-tb-combined.png":[4,24,"png","qx"],"qx/decoration/Modern/window/captionbar-active-b.png":[6,6,"png","qx","qx/decoration/Modern/window-captionbar-tb-active-combined.png",0,-18],"qx/decoration/Modern/window/captionbar-active-bl.png":[6,6,"png","qx","qx/decoration/Modern/window-captionbar-tb-active-combined.png",0,-24],"qx/decoration/Modern/window/captionbar-active-br.png":[6,6,"png","qx","qx/decoration/Modern/window-captionbar-tb-active-combined.png",0,-12],"qx/decoration/Modern/window/captionbar-active-c.png":[40,9,"png","qx"],"qx/decoration/Modern/window/captionbar-active-l.png":[6,9,"png","qx","qx/decoration/Modern/window-captionbar-lr-active-combined.png",-6,0],"qx/decoration/Modern/window/captionbar-active-r.png":[6,9,"png","qx","qx/decoration/Modern/window-captionbar-lr-active-combined.png",0,0],"qx/decoration/Modern/window/captionbar-active-t.png":[6,6,"png","qx","qx/decoration/Modern/window-captionbar-tb-active-combined.png",0,-6],"qx/decoration/Modern/window/captionbar-active-tl.png":[6,6,"png","qx","qx/decoration/Modern/window-captionbar-tb-active-combined.png",0,0],"qx/decoration/Modern/window/captionbar-active-tr.png":[6,6,"png","qx","qx/decoration/Modern/window-captionbar-tb-active-combined.png",0,-30],"qx/decoration/Modern/window/captionbar-active.png":[69,21,"png","qx"],"qx/decoration/Modern/window/captionbar-inactive-b.png":[6,6,"png","qx","qx/decoration/Modern/window-captionbar-tb-inactive-combined.png",0,-24],"qx/decoration/Modern/window/captionbar-inactive-bl.png":[6,6,"png","qx","qx/decoration/Modern/window-captionbar-tb-inactive-combined.png",0,-6],"qx/decoration/Modern/window/captionbar-inactive-br.png":[6,6,"png","qx","qx/decoration/Modern/window-captionbar-tb-inactive-combined.png",0,-30],"qx/decoration/Modern/window/captionbar-inactive-c.png":[40,9,"png","qx"],"qx/decoration/Modern/window/captionbar-inactive-l.png":[6,9,"png","qx","qx/decoration/Modern/window-captionbar-lr-inactive-combined.png",0,0],"qx/decoration/Modern/window/captionbar-inactive-r.png":[6,9,"png","qx","qx/decoration/Modern/window-captionbar-lr-inactive-combined.png",-6,0],"qx/decoration/Modern/window/captionbar-inactive-t.png":[6,6,"png","qx","qx/decoration/Modern/window-captionbar-tb-inactive-combined.png",0,0],"qx/decoration/Modern/window/captionbar-inactive-tl.png":[6,6,"png","qx","qx/decoration/Modern/window-captionbar-tb-inactive-combined.png",0,-12],"qx/decoration/Modern/window/captionbar-inactive-tr.png":[6,6,"png","qx","qx/decoration/Modern/window-captionbar-tb-inactive-combined.png",0,-18],"qx/decoration/Modern/window/captionbar-inactive.png":[69,21,"png","qx"],"qx/decoration/Modern/window/close-active-hovered.png":[9,9,"png","qx","qx/decoration/Modern/window-captionbar-buttons-combined.png",-27,0],"qx/decoration/Modern/window/close-active.png":[9,9,"png","qx","qx/decoration/Modern/window-captionbar-buttons-combined.png",-9,0],"qx/decoration/Modern/window/close-inactive.png":[9,9,"png","qx","qx/decoration/Modern/window-captionbar-buttons-combined.png",-90,0],"qx/decoration/Modern/window/maximize-active-hovered.png":[9,9,"png","qx","qx/decoration/Modern/window-captionbar-buttons-combined.png",-18,0],"qx/decoration/Modern/window/maximize-active.png":[9,9,"png","qx","qx/decoration/Modern/window-captionbar-buttons-combined.png",-81,0],"qx/decoration/Modern/window/maximize-inactive.png":[9,9,"png","qx","qx/decoration/Modern/window-captionbar-buttons-combined.png",-54,0],"qx/decoration/Modern/window/minimize-active-hovered.png":[9,9,"png","qx","qx/decoration/Modern/window-captionbar-buttons-combined.png",-63,0],"qx/decoration/Modern/window/minimize-active.png":[9,9,"png","qx","qx/decoration/Modern/window-captionbar-buttons-combined.png",-72,0],"qx/decoration/Modern/window/minimize-inactive.png":[9,9,"png","qx","qx/decoration/Modern/window-captionbar-buttons-combined.png",-36,0],"qx/decoration/Modern/window/restore-active-hovered.png":[9,8,"png","qx","qx/decoration/Modern/window-captionbar-buttons-combined.png",0,0],"qx/decoration/Modern/window/restore-active.png":[9,8,"png","qx","qx/decoration/Modern/window-captionbar-buttons-combined.png",-99,0],"qx/decoration/Modern/window/restore-inactive.png":[9,8,"png","qx","qx/decoration/Modern/window-captionbar-buttons-combined.png",-45,0],"qx/decoration/Modern/window/statusbar-b.png":[4,4,"png","qx","qx/decoration/Modern/window-statusbar-tb-combined.png",0,-16],"qx/decoration/Modern/window/statusbar-bl.png":[4,4,"png","qx","qx/decoration/Modern/window-statusbar-tb-combined.png",0,-20],"qx/decoration/Modern/window/statusbar-br.png":[4,4,"png","qx","qx/decoration/Modern/window-statusbar-tb-combined.png",0,-4],"qx/decoration/Modern/window/statusbar-c.png":[40,7,"png","qx"],"qx/decoration/Modern/window/statusbar-l.png":[4,7,"png","qx","qx/decoration/Modern/window-statusbar-lr-combined.png",-4,0],"qx/decoration/Modern/window/statusbar-r.png":[4,7,"png","qx","qx/decoration/Modern/window-statusbar-lr-combined.png",0,0],"qx/decoration/Modern/window/statusbar-t.png":[4,4,"png","qx","qx/decoration/Modern/window-statusbar-tb-combined.png",0,0],"qx/decoration/Modern/window/statusbar-tl.png":[4,4,"png","qx","qx/decoration/Modern/window-statusbar-tb-combined.png",0,-8],"qx/decoration/Modern/window/statusbar-tr.png":[4,4,"png","qx","qx/decoration/Modern/window-statusbar-tb-combined.png",0,-12],"qx/decoration/Modern/window/statusbar.png":[369,15,"png","qx"],"qx/decoration/Simple/arrows/down-invert.gif":[7,4,"gif","qx"],"qx/decoration/Simple/arrows/down-small.gif":[5,3,"gif","qx"],"qx/decoration/Simple/arrows/down.gif":[7,4,"gif","qx"],"qx/decoration/Simple/arrows/forward.gif":[8,7,"gif","qx"],"qx/decoration/Simple/arrows/left-invert.gif":[4,7,"gif","qx"],"qx/decoration/Simple/arrows/left.gif":[4,7,"gif","qx"],"qx/decoration/Simple/arrows/rewind.gif":[8,7,"gif","qx"],"qx/decoration/Simple/arrows/right-invert.gif":[4,7,"gif","qx"],"qx/decoration/Simple/arrows/right.gif":[4,7,"gif","qx"],"qx/decoration/Simple/arrows/up-invert.gif":[7,4,"gif","qx"],"qx/decoration/Simple/arrows/up-small.gif":[5,3,"gif","qx"],"qx/decoration/Simple/arrows/up.gif":[7,4,"gif","qx"],"qx/decoration/Simple/checkbox/checked-disabled.png":[6,6,"png","qx"],"qx/decoration/Simple/checkbox/checked.png":[6,6,"png","qx"],"qx/decoration/Simple/checkbox/undetermined-disabled.png":[6,2,"png","qx"],"qx/decoration/Simple/checkbox/undetermined.png":[6,2,"png","qx"],"qx/decoration/Simple/colorselector/brightness-field.png":[19,256,"png","qx"],"qx/decoration/Simple/colorselector/brightness-handle.gif":[35,11,"gif","qx"],"qx/decoration/Simple/colorselector/huesaturation-field.jpg":[256,256,"jpeg","qx"],"qx/decoration/Simple/colorselector/huesaturation-handle.gif":[11,11,"gif","qx"],"qx/decoration/Simple/cursors/alias.gif":[19,15,"gif","qx"],"qx/decoration/Simple/cursors/copy.gif":[19,15,"gif","qx"],"qx/decoration/Simple/cursors/move.gif":[13,9,"gif","qx"],"qx/decoration/Simple/cursors/nodrop.gif":[20,20,"gif","qx"],"qx/decoration/Simple/menu/checkbox-invert.gif":[16,7,"gif","qx"],"qx/decoration/Simple/menu/checkbox.gif":[16,7,"gif","qx"],"qx/decoration/Simple/menu/radiobutton-invert.gif":[16,5,"gif","qx"],"qx/decoration/Simple/menu/radiobutton.gif":[16,5,"gif","qx"],"qx/decoration/Simple/splitpane/knob-horizontal.png":[1,8,"png","qx"],"qx/decoration/Simple/splitpane/knob-vertical.png":[8,1,"png","qx"],"qx/decoration/Simple/table/ascending-invert.png":[10,10,"png","qx"],"qx/decoration/Simple/table/ascending.png":[10,10,"png","qx"],"qx/decoration/Simple/table/boolean-false.png":[11,11,"png","qx"],"qx/decoration/Simple/table/boolean-true.png":[11,11,"png","qx"],"qx/decoration/Simple/table/descending-invert.png":[10,10,"png","qx"],"qx/decoration/Simple/table/descending.png":[10,10,"png","qx"],"qx/decoration/Simple/table/select-column-order.png":[10,9,"png","qx"],"qx/decoration/Simple/tabview/close.gif":[10,9,"gif","qx"],"qx/decoration/Simple/tree/minus.gif":[19,16,"gif","qx"],"qx/decoration/Simple/tree/plus.gif":[19,16,"gif","qx"],"qx/decoration/Simple/treevirtual/cross.gif":[19,16,"gif","qx"],"qx/decoration/Simple/treevirtual/cross_minus.gif":[19,16,"gif","qx"],"qx/decoration/Simple/treevirtual/cross_plus.gif":[19,16,"gif","qx"],"qx/decoration/Simple/treevirtual/end.gif":[19,16,"gif","qx"],"qx/decoration/Simple/treevirtual/end_minus.gif":[19,16,"gif","qx"],"qx/decoration/Simple/treevirtual/end_plus.gif":[19,16,"gif","qx"],"qx/decoration/Simple/treevirtual/line.gif":[19,16,"gif","qx"],"qx/decoration/Simple/treevirtual/only_minus.gif":[19,16,"gif","qx"],"qx/decoration/Simple/treevirtual/only_plus.gif":[19,16,"gif","qx"],"qx/decoration/Simple/treevirtual/start.gif":[19,16,"gif","qx"],"qx/decoration/Simple/treevirtual/start_minus.gif":[19,16,"gif","qx"],"qx/decoration/Simple/treevirtual/start_plus.gif":[19,16,"gif","qx"],"qx/decoration/Simple/window/close.gif":[10,9,"gif","qx"],"qx/decoration/Simple/window/maximize.gif":[9,9,"gif","qx"],"qx/decoration/Simple/window/minimize.gif":[9,9,"gif","qx"],"qx/decoration/Simple/window/restore.gif":[8,9,"gif","qx"],"qx/icon/Oxygen/16/actions/dialog-cancel.png":[16,16,"png","qx"],"qx/icon/Oxygen/16/actions/dialog-ok.png":[16,16,"png","qx"],"qx/icon/Oxygen/16/actions/view-refresh.png":[16,16,"png","qx"],"qx/icon/Oxygen/16/actions/window-close.png":[16,16,"png","qx"],"qx/icon/Oxygen/16/apps/office-calendar.png":[16,16,"png","qx"],"qx/icon/Oxygen/16/mimetypes/text-plain.png":[16,16,"png","qx"],"qx/icon/Oxygen/16/places/folder-open.png":[16,16,"png","qx"],"qx/icon/Oxygen/16/places/folder.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/address-book-new.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/application-exit.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/appointment-new.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/bookmark-new.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/check-spelling.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/contact-new.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/dialog-apply.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/dialog-cancel.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/dialog-close.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/dialog-ok.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/document-new.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/document-open-recent.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/document-open.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/document-print-preview.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/document-print.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/document-properties.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/document-revert.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/document-save-as.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/document-save.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/document-send.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/edit-clear.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/edit-copy.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/edit-cut.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/edit-delete.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/edit-find.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/edit-paste.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/edit-redo.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/edit-select-all.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/edit-undo.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/folder-new.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/format-indent-less.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/format-indent-more.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/format-justify-center.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/format-justify-fill.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/format-justify-left.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/format-justify-right.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/format-text-bold.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/format-text-direction-ltr.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/format-text-direction-rtl.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/format-text-italic.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/format-text-strikethrough.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/format-text-underline.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/go-bottom.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/go-down.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/go-first.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/go-home.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/go-last.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/go-next.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/go-previous.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/go-top.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/go-up.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/help-about.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/help-contents.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/help-faq.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/insert-image.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/insert-link.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/insert-text.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/list-add.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/list-remove.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/mail-forward.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/mail-mark-important.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/mail-mark-junk.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/mail-mark-read.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/mail-mark-unread.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/mail-message-new.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/mail-receive.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/mail-reply-all.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/mail-reply-sender.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/mail-send.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/media-eject.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/media-playback-pause.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/media-playback-start.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/media-playback-stop.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/media-record.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/media-seek-backward.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/media-seek-forward.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/media-skip-backward.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/media-skip-forward.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/object-flip-horizontal.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/object-flip-vertical.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/object-rotate-left.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/object-rotate-right.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/process-stop.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/system-log-out.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/system-run.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/system-search.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/system-shutdown.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/view-fullscreen.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/view-refresh.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/view-restore.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/view-sort-ascending.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/view-sort-descending.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/window-close.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/window-new.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/zoom-fit-best.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/zoom-in.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/zoom-original.png":[16,16,"png","qx"],"qx/icon/Tango/16/actions/zoom-out.png":[16,16,"png","qx"],"qx/icon/Tango/16/apps/office-calendar.png":[16,16,"png","qx"],"qx/icon/Tango/16/apps/preferences-clock.png":[16,16,"png","qx"],"qx/icon/Tango/16/apps/utilities-color-chooser.png":[16,16,"png","qx"],"qx/icon/Tango/16/mimetypes/office-document.png":[16,16,"png","qx"],"qx/icon/Tango/16/mimetypes/text-plain.png":[16,16,"png","qx"],"qx/icon/Tango/16/places/folder-open.png":[16,16,"png","qx"],"qx/icon/Tango/16/places/folder.png":[16,16,"png","qx"],"qx/icon/Tango/22/mimetypes/office-document.png":[22,22,"png","qx"],"qx/icon/Tango/22/places/folder-open.png":[22,22,"png","qx"],"qx/icon/Tango/22/places/folder.png":[22,22,"png","qx"],"qx/icon/Tango/32/mimetypes/office-document.png":[32,32,"png","qx"],"qx/icon/Tango/32/places/folder-open.png":[32,32,"png","qx"],"qx/icon/Tango/32/places/folder.png":[32,32,"png","qx"],"qx/static/blank.gif":[1,1,"gif","qx"]},"translations":{"C":{},"de":{"  at: %1":"  um: %1"," (local)":" Lokalzeit"," - click me to see current location":"- bitte klicken um die aktuelle Position zu sehen"," deg":" °","%1":"%1","%1 POI changed":"%1 POI wurde abgeändert","%1 POI changed but %2":"%1 POI wurden geändert aber %2","%1 POI removed":"Der POI wurde gelöscht","%1 POI removed but %2":"%1 POI gelöscht aber %2","%1 POIs changed":"%1 POIs wurden geändert","%1 POIs changed: %2":"%1 POIs wurden geändert: %2","%1 POIs removed":"%1 POIs wurden gelöscht","%1 POIs removed: %2":"%1 POIs gelöscht: %2","%1 Test":"%1 Test","%1 devices: Click: Sort by alias name / Shift-Click: Sort by login name":"%1 Geräte: Klick: Sortierung nach Aliasname / Umschalt-Klick: Sortierung nach Loginname","%1 does not fit %2.":"%1 passt nicht zu %2.","%1 found":"%1 gefunden","%1 is not a color! %2":"%1 ist keine Farbe! %2","%1 is not a number.":"%1 ist keine Nummer.","%1 is not a string.":"%1 ist keine Zeichenkette.","%1 is not an url.":"%1 ist keine URL.","%1 is not in %2":"%1 ist nicht in %2","%1 is not in the range from [%2, %3].":"%1 liegt nicht im Intervall [%2, %3].","%1 is not my buddy anymore":"%1 ist nicht mehr unser Gruppenmitglied","%1 is validated":"%1 funktioniert","%1 matches found":"%1 Treffer","%1 of %2 rows":"%1 von %2 Zeilen","%1 plot data read ...":"%1 Diagrammdaten gelesen ...","%1 rows":"%1 Zeilen","&#xf8; Speed: ":"&#xf8; Tempo: ","'%1' is not an email address.":"'%1' ist keine Emailadresse.","(Buddy has empty permissions)":"(Initial ohne Rechte)","(Not logged in)":"(Nicht angemeldet)","*New*":"* Neu * ",", %1 filter NOT active":", %1 Filter ist NICHT aktiv",", %1 filter is active!":", %1 filter ist aktiv!",", %1 only":", nur %1",", %1/%2 only":", nur %1/%2",", %1/%2/%3 only":", nur %1/%2/%3",", click on row of account to edit in other window.":", klicken Sie auf eine Zeile um den Portalzugang zu laden.",", filter NOT active":", keine Filterung",", filter is active!":", Daten sind gefiltert!","<<Enter Text>>":"<<Text eingeben>>","<New Geofence>":"<Neuer Geozaun>","<New Rule>":"<Neue Regel Anlegen>","<New home view>":"<Neue Heimansicht>","<b>%1</b> is in power saving mode %2 (sleeping)":"<b>%1</b> ist im Stromsparmodus %2 (schlafend)","<b>%1</b> is in power saving mode (sleeping)":"<b>%1</b> ist im Stromsparmodus (schlafend)","<b>%1</b> is offline":"<b>%1</b> ist nicht erreichbar","<b>%1</b> is online":"<b>%1</b> ist verbunden","<b>%1</b> is online but has no GPS signal":"<b>%1</b> ist verbunden aber ohne GPS Signal","<b>%1</b>: Access history tracks and configure track-colors and icons":"Alte Ortungsdaten von <b>%1</b>, Ortungsfarbe und Icons","<b><font color='#FF0000'>Unexpected</font></b> %1":"<b><font color='#FF0000'>Unerwartete Antwort</b> %1","<b><font color='brown'>Processing '%1'...</font></b><br />count=%2,state=%3":"<b><font color='brown'>Bearbeitung von '%1'...</font></b><br />Anzahl=%2 Status=%3","<b><font color='green'>Configuration is saved</font></b>":"<b><font color='green'>Konfiguration ist gespeichert worden</font></b>","<b><font color='green'>Rule is deleted</font></b>":"<b><font color='green'>Die Regel wurde gelöscht</font></b>","<b><font color='green'>Success, PDF '%1' (%2 bytes) created and sent to email address</font></b>":"<b><font color='green'>Fertig, PDF '%1' (%2 bytes) wurde erzeugt und an die angegebene Emailadresse gesendet</font></b>","<b><font color='green'>Success.</font></b>":"<b><font color='green'>Erledigt.</font></b>","<b><font color='green'>Success</font></b> %1":"<b><font color='green'>Geändert</font></b> %1","<b><font color='green'>The rule '%1' is saved.</font></b><p>The tracker is configured accordingly, please check the status window for tracker responses.</p>":"<b><font color='green'>Die Regel '%1' ist abgespeichert worden.</font></b><p>Falls erforderlich, wurden an den Tracker Konfigurationsänderungen gesendet.<br />Bitte prüfen Sie die Trackerantworten im Status-Fenster links unten.</p>","<b><font color='red'>Error code %1</font></b><br />%2":"<b><font color='red'>Der Fehler '%1' ist aufgetreten.</font></b><br />Details:<br /><i>%2</i>","<b><font color='red'>Only the newest and uncomfirmed %1 results are shown</font></b>":"<b><font color='red'>Es gibt noch mehr unbestätigte Ereignisse, nur die %1 neuesten werden gezeigt</font></b>","<b><font color='red'>Timeout</font></b>, no response after %1 sec":"<b><font color='red'>Zeitüberschreitung</font></b>, wir haben keine Antwort innerhalb %1 Sekunden erhalten","<b>Add Buddy</b>":"<b>Hinzufügen</b>","<b>Changing POI failed</b><p/>%1<p/>%2":"<b>Der POI konnte nicht geändert werden</b><p/>%1<p/>%2","<b>Create</b>":"Anlegen","<b>Delete Geofence</b>":"<b>Geozaun löschen</b>","<b>Delete</b>":"<b>Löschen</b>","<b>Destroy %1</b>":"<b>Lösche %1</b>","<b>Good Bye From %1!</b><br /><br /><b>The account %2 is destroyed</b><br />Thanks for having used %1.":"<b>Auf Wiedersehen!</b><br /><br /><b>Der Zugang %2 ist mit allen Daten gelöscht</b><br />Vielen Dank für Ihre Zeit mit %1.","<b>Key</b>":"<b>Schlüssel</b>","<b>Lost server connection</b><p />Possible causes are:<br /><ol><li>Your internet aceess was interrupted</li><li>The ESC key was hit</li></ol>Please try again later":"<b>Die Verbindung zum Webserver wurde unterbrochen</b><p />Mögliche Ursachen sind zum Beispiel:<br /><ol><li>Die Internetverbindung ist getrennt oder war unterbrochen</li><li>Die ESC-Taste wurde gedrückt</li></ol>Bitte melden Sie sich erneut an","<b>Missing command to send to tracker</b>":"<b>Bitte tragen Sie ein Kommando ein</b>","<b>Modify</b>":"Ändern","<b>Removing POI failed</b><p/>%1<p/>%2":"<b>Löschen von POI nicht möglich</b><p/>%1<p/>%2","<b>Save</b>":"<b>Sichern</b>","<b>Timeout, changing POI failed</b>":"<b>Zeitüberschreitung, der POI konnte vermutlich nicht geändert werden</b>","<b>Timeout, removing POI failed</b>":"<b>Zeitüberschreitung, das POI konnte nicht gelöscht werden</b>","<b>Value</b>":"<b>Wert</b>","<b>Welcome to %1 Web Tracking</b>":"<b>Herzlich Willkommen beim %1 Web Tracking</b>","<font color='#444444'>Applies for time zone: %1</font>":"<font color='#444444'>Gilt für Zeitzone: %1</font>","<p style='color:red'>REST call failed with HTTP status=%1</p><p>Error code: <span style='color:red'>%2</span></p>":"<p style='color:red'>REST Anfrage schlug fehl mit HTTP Status=%1</p><p>Fehlerkode: <span style='color:red'>%2</span></p>","<p style='color:red'>REST response timed out after %1 seconds.</p>The service did not respond, please check the URI and if your service is running and reachable":"<p style='color:red'>Zeitüberschreitung beim Warten auf REST Antwort nach %1 Sekunden.</p> Der Server antwortete nicht, überprüfen Sie bitte die URI und stellen sie sicher, dass der Server läuft und erreichbar ist. ","<p><font color='green'>Note:</font> For tracker of types like 'TK2000' and 'TK5000' no such SMS costs arise if they are online.</p>":"<p><font color='green'>Hinweis:</font> Für die Trackermodelle TK2000 und TK5000 entstehen, falls diese online sind, keine solche SMS Kosten.</p>","<p><font color='red'>Caution:</font> Disable power save mode (sleep mode) if configured, otherwise this rule has no effect.</p>":"<p><font color='red'>Achtung:</font> Falls Sie einen Stromsparmodus aktiviert haben schalten Sie diesen bitte aus. Sonst wirkt diese Regel nicht.</p>","<p><font color='red'>Caution:</font> For this tracker type your SIM card on the tracker is charged. It is caused when the tracker sends the configuration SMS responses. The SMS send by the portal are free of charge as specified in your contract.</p>":"<p><font color='red'>Achtung:</font> Es entstehen beim TK102 Trackermodell SMS Kosten für Ihre SIM Karte auf dem Tracker. Diese entstehen durch die Konfigurationsantwort-SMS. Die SMS welche vom Portal gesendet werden, sind entsprechend Ihrem Vertrag, kostenlos.</p>","<p><font color='red'>Caution:</font> Please provide an email address so we can remember you about the deactivation after an alarm has fired.</p>":"<p><font color='red'>Wichtig:</font> Bitte geben Sie eine Emailadresse an damit wir Sie nach Auslösung des Alarms über die Deaktivierung informieren können.</p>","<p>Can't remove locationId %1, GPSData is missing in table</p>":"<p>locationId %1 kann in Tabelle nicht gelöscht werden, GPSData fehlt</p>","<p>Do you still want to save and activate the rule?</p>":"Wollen Sie die Alarmregel nun speichern und aktivieren?","<p>Get a %1 account: <a href='http://watchee.net/watchee/register.jsp' target='_blank'>Register</a></p>":"<p>Registrieren Sie sich für einen %1 Zugang: <a href='http://watchee.net/watchee/register.jsp' target='_blank'>Registrieren</a></p>","<p>Not changed locationId %1: %2</p>":"<p>locationId %1 wurde nicht geändert: %2</p>","<p>Not removed locationId %1: %2</p>":"<p>POI  %1 wurde nicht gelöscht: %2</p>","<p>REST request is sent to <br /><code>%1</code></p><ul><li>We wait %2 seconds for the response to arrive</li><li>Check your REST server to see the call</li></ol>":"<p>REST Anfrage wird gesendet: <br/><code>%1</code></p><ul><li>%2 Sekunden auf Antwort warten.</li><li>Prüfen sie nach, ob die Anfrage auf Ihrem REST Server eingetroffen ist.</li></ol>","<span style='color:green'><br>Note: You can activate the device through the portal, by SMS, calling or shaking.</span>":"<span style='color:green'><br>Hinweis: Das Gerät kann durch das Portal, durch eine SMS, durch Anrufen oder durch Schütteln aktiviert werden.</span>","<span style='color:green'><br>Note: You can send an SMS or call the device to wake it up.</span>":"<span style='color:green'><br>Hinweis: Das Gerät kann durch eine SMS oder durch Anrufen aktiviert werden. Der Verbrauch ist 7mAh (aufgerundet).</span>","<span style='color:green'><br>Note: You can send an SMS, call or shake the device to wake it up.</span>":"<span style='color:green'><br>Hinweis: Das Gerät kann durch eine SMS, durch Anrufen oder durch Schütteln aktiviert werden. Der Verbrauch ist 7mAh (aufgerundet).</span>","<span style='color:green'>Note: Here you can calibrate your analog inputs with the linear formular <b> f(x)=ax+b </b> where x is the tracker input voltage.<br/><i>Deci</i> are the number of decimal places to be used to display the result. <br/>The tracker should be online during changes.</span>":"<span style='color:green'>Hinweis: Hier können Sie die analogen Eingangswerte (0 bis 30 Volt) auf Temperatur, Salzmenge etc umrechnen lassen; mittels der linearen Gleichung <b> f(x)=ax+b </b>, wobei x für die Trackereingangsspannung steht.<br/><i>Dezi</i> sind die Anzahl Nachkommastellen für die Ergebnisdarstellung. <br/>Der Tracker sollte bei Änderungen verbunden sein.</span>","<span style='color:green'>When disabled (default)</span>, the device will automatically close the GPRS session during roaming and buffer all new positions. Those positions will be sent out whenever the device returns to its standard (non-roaming) network. </br><span style='color:red'>When enabled</span>, the device will continue sending out positions using the GPRS connection of the roaming network. This may result in <b> high traffic cost </b> but supports real time tracking in any network.":"<span style='color:green'>Falls deaktiviert (Standard)</span> beendet das Gerät automatisch die GPRS Verbindung beim Roaming. Alle neuen Positionen werden zwischengepuffert und beim Wiedereintritt ins Heimnetz abgesendet. </br><span style='color:red'>Falls aktiviert</span> sendet das Gerät weiterhin Positionsdaten über die GPRS Verbindung des Roaming-Netzes. Dabei können <b> hohe Datentransferkosten </b> entstehen. Hiermit ist Echtzeittracking in jedem Netz möglich.","<span style='color:red'><b> Don't forget to save a modified POI configuration on the server after sending it to a device (-> 'Save' button at very top of window). <br> If not, your POI reports for this POI configuration might be incomplete or totally missing. </b></span>":"<span style='color:red'><b> Geänderte Konfiguration unbedingt auch auf dem Server speichern (-> 'Speichern' Knopf am oberen Fensterrand). <br> Die POI Berichte können fehlerhaft sein oder komplett fehlen falls nicht gespeichert. </b></span>","<span style='color:red'><br>Attention: In this mode, the device only wakes up on each 'Refresh GPS Data' interval (defaults to 1 hour). There is no other way to wake up the device for sending a new configuration.</span>":"<span style='color:red'><br>Achtung: In diesem Modus wacht das Gerät nur in jedem 'GPS Daten Aktualisieren' Intervall auf (Voreinstellung ist 1 Stunde). Es gibt keine andere Möglichkeit das Gerät zu aktivieren um eine neue Konfiguration zu senden. Der Verbrauch ist 2,5mAh.</span>","<span style='color:red'><br>Attention: You can shake the device to wake it up. Other methods won't work.</span>":"<span style='color:red'><br>Achtung: Das Gerät kann nur durch Schütteln aktiviert werden. Andere Methoden funktionieren nicht. Der Verbrauch ist 2,5mAh.</span>","<span style='color:red;'>Caution: You really need to know what you are doing. Changing this value can cause malfunction!</span>":"<span style='color:red;'>Vorsicht: Verwenden Sie den Expertenmodus nur dann, wenn Sie wissen was er bedeutet. Falsche Eingaben können zu Fehlfunktionen führen!</span>","Account":"Benutzerkonto","Account Info":"Kontoinformation","Account Search":"Portalzugänge suchen","Account added":"Benutzerkonto wurde hinzugefuegt","Account can't be removed for public users":"Das Gastkonto kann nicht gelöscht werden","Account changed":"Benutzerkonto wurde gespeichert","Account details":"Kontodaten","Account-Details":"Konto-Details","Activate Power Save Mode":"Stromsparmodus aktivieren","Activate to have sound notification in browser when alarm fires":"Tonbenachrichtigung im Browser sobald der Alarm auslöst. Bitte aktivieren falls gewünscht","Activating OUT %1 because of alarm %2":"OUT %1 durch Alarmregel %2 aktiviert","Activation after":"Aktivierung nach","Active:":"Konto ist aktiv?","Add DeviceMapping %1":"Tracker '%1' hinzufügen","Add New Buddy":"Gruppenmitglied hinzufügen","Add Tracks:":"Tracks duplizieren:","Add a device:":"Tracker hinzufügen?","Add account failed with empty data":"Hinzufügen des Konto gibt leere Daten zurück","Add account failed: %1 %2":"Konnte Benutzerkonto nicht hinzufügen: %1 %2","Add deviceMapping failed: %1 %2":"Konnte Tracker nicht hinzufügen: %1 %2","Add new home views under Config":"Unter 'Konfiguration' (rechts vom Anmeldenamen) können Sie neue Heimansichten anlegen","Adding %1 from %2":"Hinzufügen %1 von %2","Adding buddy %1":"Füge Gruppenmitglied %1 hinzu","Adding buddy %1 ...":"%1 hinzufügen ...","Adding buddy '%1' failed, please check the login name":"Hinzufügen von '%1' ist fehlgeschlagen, bitte prüfen Sie den Anmeldenamen","Adding get account login names failed: %1 %2":"Vorhandene Loginnamen konnten nicht geholt werden: %1 %2","Adding replication info failed: %1 %2":"Hinzufügen der Replikationsinfo ist fehlgeschlagen: %1 %2","Additional":"Zusätze","Additional Columns In Web Report View (not sent to device)":"Zusatzfelder in der Webbrowser Ansicht, wird nicht auf dem Handy gezeigt","Address":"Adresse","AdminEmail:":"Administrator Email:","AdminEmail: ":"Adminemail: ","Alarm":"Alarm","Alarm Event Handling":"Liste der Alarmereignisse","Alarm Events of %1":"Alarmereignisse von %1","Alarm Rules Filtered For %1":"Alarmregelen, nur für %1","Alarm.de DE":"Alarm.de DE","Alarm:":"Alarm:","Alarms with rule definitions":"Alarmereignis aus Regeldefinition","Alias name":"Aliasname","Alias name:":"Aliasname","Alias vector":"Aliasname Vektor","Alias:":"Schöner Aliasname:","All Alarm Rules":"Alle Alarmregeln","All icons":"Alle Kartensymbole","Altitude difference by comparing adjacent height data and only adding them to the total when going uphill, in meters":"Höhendifferenz in Meter, summiert den Höhengewinn der Anstiege aber nicht die Höhen talwärts","Altitude: ":"Höhe: ","Analog Input Config":"Eingänge für analoge Werte konfigurieren","Analog Input1 bar":"Analogeingang1 Balken","Analog Input1 km/h":"Analogeingang1 km/h-Pfeil","Analog Input2 bar":"Analogeingang2 Balken","Analog Input2 km/h":"Analogeingang2 km/h-Pfeil","Appears at bottom of each page":"Erscheint in der Fußzeile auf jeder Seite","Appears at top of each page":"Erscheint im Kopf jeder Seite","Auto Tracking":"Ortungseinstellungen","Auto Wacht DE":"Auto Wacht DE","Automatic":"Automatisch","Automatic Confirmations":"Automatisches Entfernen","Automatically confirm new ones":"Neuen Alarm automatisch entfernen","Available for enterprise customers only":"Nur für Enterprise-Kunden verfügbar","Average":"Summen","Average speed in kilometers per hour":"Durchschnittliche Geschwindigkeit in Kilometer pro Stunde","Badge-Counter:":"Zähler","Base rule, fallback if no rule applies":"Basisregel, Einstellung falls keine Regel wirkt","Basic":"Basic Tarif","Basic access authentication":"Basic HTTP-Authentifizierung","Bat [V]":"Bat [V]","Battery is almost empty":"Batterie ist fast leer","Battery status is not known":"Der Batterieladezustand ist nicht bekannt","Binnenschiffer DE":"Binnenschiffer DE","Black circle":"schwarzer Kreis","Black vector":"schwarzer Vektor","Blink":"Intervall","Blue circle":"blauer Kreis","Blue dot":"blauer Punkt","Blue vector":"blauer Vektor","Bottom right (Long,Lat):":"Unten rechts (Länge/Breite):","Browser notification":"Alarm im Webbrowser","Buddies processed":"Gruppenmitglieder abgearbeitet","Buddy '%1' is removed already, but '%2' still has marked us as a friend":"Das Gruppenmitglied '%1' ist schon entfernt worden, aber '%2' hat uns immer noch als Gruppenmitglied eingetragen","Buddy Name":"Gruppenmitglied","Buddy Permissions":"Vergebene Rechte","CSV":"CSV","Call":"Anrufen","Call the device, ring five times and hang up":"Gerät anrufen, fünf mal klingeln, auflegen","Calling %1 failed!<br /><br />Please configure a phone number for this device.":"Anrufen von %1 ist fehlgeschlagen!<br /><br />Bitte tragen Sie dessen Telefonnummer unter 'Schraubenschlüssel->Zeige Konfiguration' ein.","Calling REST is for enterprise customers only":"REST Aufrufe stehen nur Geschäftskunden zur Verfügung","Calling REST is for enterprise customers only, the REST configuration is not saved":"REST Aufrufe stehen nur Geschäftskunden zur Verfügung, REST ist nicht aktiviert!","Calling is not available for this device type":"Anrufe sind bei diesem Gerät nicht unterstützt","Cancel":"Abbruch","CellId/Mcc/Mnc/Lac:":"CellId/Mcc/Mnc/Lac:","Center selected icons on map":"Gewählte Kartensymbole auf Karte zeigen","Change Account":"Konto Ändern","Change Password":"Passwort ändern","Change Tracker Phone Number":"Geräte-Telefonnummer ändern","Change account":"Konto Ändern","Change name":"Name ändern","Change password":"Ändere Passwort","Change permission":"Ändere Rechte","Change persistently (survive device restart)":"Dauerhaft ändern (überlebt Geräteneustart)","Change to transport/stock mode":"In den Transport/Lagermodus wechseln","Change track appearance and load old tracks":"Darstellung der Route verändern und alte Routen laden","Changing Password ...":"Ändere Passwort ...","Changing account data for %1 failed":"Kontoänderungen für %1 konnten nicht gespeichert werden","Changing account for %1 ...":"Ändere Kontodaten von %1 ...","Changing password failed for %1:<br />%2":"Das Ändern der Passwortes für '%1' ist fehlgeschlagen:<br />%2","Changing phone number is available only for blackbox trackers":"Die Telefonnummer des Gerätes kann zur Zeit nur bei 'blackbox' Trackern geändert werden","Charged":"Geladen","Choose Devices":"Geräte wählen","Choose Geofence:":"Geozaun wählen:","Choose Power Save Mode":"Stromsparmodus wählen","Choose a sound to be played in browser when alarm fires":"Sobald ein Alarm auslöst wird der gewählte Klang im Browser abgespielt","Choose rule:":"Regel wählen:","Choose the HTTP GET method. Defines to transfer the data (key/value pairs) as URL parameters":"Wählt die HTTP GET Übertragung. Die Datenpaare werden als URL Parameter übergeben","Choose the HTTP POST method. Transfer the data (key/value pairs) as form parameters":"Wählt die HTTP POST Übertragung. Die Datenpaare werden als Formular-Parameter übergeben","Choose the HTTP authentication schema to use":"Wählen Sie das zu verwendende HTTP Anmeldeverfahren","Chosen:":"Gewählt:","Clear Status Lines":"Statuszeilen löschen","Click on row to load account.":"Bitte auf die Zeile klicken um den Portalzugang zu laden","Click to configure my account attributes and add buddies":"Klicken um meine Kontoeinstellungen anzupassen oder um Gruppenmitglieder hinzuzufügen","Click to configure the buddy account settings and change permissions granted to %1":"Klicken um die Kontoeinstellungen des Gruppenmitglieds anzupassen oder um ihm Berechtigungen zu gewähren","Click to display centered auto-tracking data on the map or Right-Click to not center":"Klick: Senden von Ortungsdaten anschalten (blau) / Rechter-Klick: Ortungsdaten zentrieren die Karte nicht (grün)","Click to show device position on the map or Right-Click to avoid zooming in / Pressing Ctrl key during click will force a query on device":"Klick: Geräteposition auf der Karte zeigen und hineinzoomen / Rechter-Klick: Position zentrieren ohne Zoom / Gleichzeitig Strg Taste gedrückt erzwingt erneute Positionsabfrage auf Gerät","Click to stop auto-tracking on the map or Shift-Click to avoid centering":"Klick: Senden von Ortungsdaten ausschalten / Umschalt-Klick: Ortungsdaten zentrieren Karte nicht (grün)","Click to stop auto-tracking on the map or Shift-Click to center":"Klick: Senden von Ortungsdaten ausschalten / Umschalt-Klick: Ortungsdaten zentrieren die Karte wenn nötig (blau)","Color Selector":"Farbauswahl","Color of segment":"Linienfarbe","Column is editable, use double-click to edit":"Diese Spalte ist mit einem Doppelklick editierbar","Column name":"Feldname","Comfort":"Comfort Tarif","Command <br /><i>%1</i><br /> is sent to %2":"Kommando <br /><i>%1</i><br />wurde an %2 gesendet","Command is sent to %1 over SMS<br />The response will take about one minute, please wait<br /><br /><i>%2</i>":"Kommando ist an %1 gesendet worden.<br />Die SMS Antwort kann bis zu einer Minute dauern, bitte gedulden Sie sich einen Moment.<br /><br /><i>%2</i>","Command is sent to %1<br /><br /><i>%2</i>":"Kommando ist an %1 gesendet worden<br /><br /><i>%2</i>","Comment":"Kommentar","Comnbination vector":"Kombinationsvektor","Company":"Firma","Company Information":"Impressum","Company:":"Firma:","Company: ":"Firma: ","Companyname:":"Firmenname:","Complete day":"Gilt für ganzen Tag","Conditions for entering sleep mode within given seconds: <ol><li>No movement</li><li>No commands received</li><li>No button pressed</li></ol>":"Bedingungen damit der Tracker nach den angegebenen Sekunden in den Stromsparmodus wechselt: <ol><li>Keine Bewegung</li><li>Keine Kommandos werden gesendet</li><li>Die Tracker-Taste wird nicht gedrückt</li></ol>","Config":"Konfiguration","Configuration":"Konfiguration","Configuration saved":"Die Einstellungen sind gespeichert worden","Configure <b>%1</b> relation and permissions":"Rechte für <b>%1</b> konfigurieren","Configure Device":"Gerät Einstellen","Configure device":"Gerät Konfigurieren","Configure device of <b>%1</b>, change tracking rate and more":"Konfiguration von Tracker <b>%1</b>, Ändern des Sendeintervalls und mehr","Configure general settings":"Bearbeiten von globalen Einstellungen","Configure my settings":"Konfigurieren Sie ihre Einstellungen","Configure remotely the device of your buddy %1":"Fernkonfiguration des Gerätes von ihrem Gruppenmitglied %1","Configure remotely your device (mobile phone or PDA)":"Fernkonfiguration von ihrem Gerät (Handy,PDA,iPhone,Tracker)","Configure the display of your tracks and load history tracks":"Anzeige der Routen konfigurieren und alte Routen anschauen","Configure your remote device":"Konfigurieren Sie Ihre Tracker-Hardware","Configure your remote device (Shift-Click: Administrator mode)":"Konfigurieren Sie Ihre Tracker-Hardware (Umschalt+Klick: Administrator Modus)","Confirm":"Quittieren","Confirm All":"Alle entfernen","Confirm Selected":"Selektierte Alarmereignisse aus Liste entfernen","Confirm that you are aware of this alarm of %1":"Alarm von %1 wurde zur Kenntnis genommen","Connect to server during wake-up":"Beim periodischen Aufwachen mit dem Server verbinden","Container Id":"Container Id","Contract Info":"Vertragsinfo","Contract type":"Tarif","Counter for %1":"Stückzähler für %1","Course [°]":"Richtung [°]","Course in °":"Fahrtrichtung [°]","Course/Height:":"Fahrtrichtung/Höhe:","Course:":"Fahrtrichtung:","Create report":"Bericht erstellen","Create, load, save and delete POI configurations on the server":"POI Konfiguration auf dem Server anlegen, ändern oder löschen","Created":"Erzeugt","Creating plot ...":"Baue Diagramm ...","Creation of map frame failed":"Fehler beim Erstellen der Karte","Current Position":"Aktuelle Position","Currently in Power Save Mode":"Derzeit im Stromsparmodus","Currently normal operation":"Momentan Normalbetrieb","Customize home views":"Heimansichten bearbeiten","Cyan circle":"blaugrüner Kreis","Cyan vector":"blaugrüner Vektor","Czech cs":"Tschechisch cs","DANGER (all data is destroyed)":"WARNUNG (alle Daten werden gelöscht)","Darkgreen circle":"dunkelgrüner Kreis","Darkgreen vector":"dunkelgrüner Vektor","Data type":"Datentyp","Date":"Datum","Date (local)":"Datum (lokal)","Date/Time:":"Datum/Uhrzeit","Date:":"Datum:","Deci":"Dezi","Default":"Vorgabe","Default | 1 Hour":"Standard | 1 Stunde","Default | 5 Minutes":"Standard | 5 Minuten","Default | GPS off, GSM on, GPRS off, G-sensor on":"Standard | GPS aus, GSM an , GPRS aus, G-sensor an","Delete":"Löschen","Delete Account":"Konto Löschen","Delete selected rows":"Selektierte Zeilen löschen","Delete track":"Route löschen","Destination Server:":"Empfängerserver","Destroy":"Zerstören","Destroying account <b>%1</b> ...<p>Note: This can take half an hour depending on the amount of data</p><br />Please be patient ...":"Zugang<b>%1</b> wird zerstört ...<p>Hinweis: Dies kann einige Minuten dauern, abhängig von der Menge der Daten</p><br />Bitte Geduld ...","Destroying your account ...<p>Note: This can take half an hour depending on the amount of data you have</p><br />Please be patient ...":"Ihr Zugang wird zerstört ...<p>Bitte beachten Sie: Dies kann, je nach Datenmenge, bis zu einer halben Stunde dauern.</p><br />Bitte gedulden Sie sich etwas ...","Details":"Details","Device":"GPS-Gerät","Device %1 is off-line":"Gerät %1 ist nicht erreichbar","Device %1 is off-line or you have no permissions":"Gerät %1 ist nicht erreichbar oder Sie haben keine Rechte","Device %1 is off-line, getting last known configuration":"Gerät %1 ist nicht verbunden, wir verwenden die zuletzt bekannte Konfiguration","Device IO State":"Input/Output-Status des Gerätes","Device control":"Geräteadministration","Device is charged by external power supply [%1 %2%]":"Das Gerät wird von externer Spannungsquelle versorgt [%1 %2%]","Device is charged by external power supply [%1 %2V]":"Das Gerät wird von externer Spannungsquelle versorgt [%1 %2V]","Device phone number for SMS sending":"Telefonnummer des Gerätes für SMS Konfigurationsnachrichten","Device shall send tracking data":"Gerät soll Ortungsdaten zum Server senden","Device:":"Gerät:","DeviceMapping added":"Tracker hinzugefügt","DeviceMapping added with null response":"DeviceMapping mit NULL Antwort?!","DeviceMapping didn't exist":"Tracker ist unbekannt","DeviceMapping removed":"Tracker wurde gelöscht","DeviceMapping removed with null response":"DeviceMapping mit NULL Antwort enfernt?!","DeviceMapping saved":"Trackerdaten wurden gespeichert","Diagram":"Diagramm","Disabled for this account":"Ist für diesen Account nicht möglich","Distance: ":"Distanz: ","Do you really want to close the Window and throw away edited entries in: %1":"Wollen Sie das Fenster schließen und Änderungen in '%1' verwerfen?","Do you really want to destroy permanently the account <br /><b>%1</b>?":"Wollen Sie wirklich den Zugang mit allen seinen Daten löschen<br /><b>%1</b>?","Do you really want to destroy permanently track <br /><b>%1</b> with %2 locations?":"Wollen Sie wirklich unwiderruflich die Route <br /><b>%1</b> mit %2 Positionen löschen?","Do you really want to destroy permanently your account <br /><b>%1</b>?":"Wollen Sie wirklich permanent Ihr Konto und all Ihre Daten löschen <br /><b>%1</b>?","Do you really want to permanently delete <b> %1 </b> POIs?":"Wollen Sie wirklich <b> %1 </b> POIs löschen?","Do you really want to permanently delete <b>one</b> POI?":"Wollen Sie wirklich diesen POI löschen?","Done":"Erledigt","Drawing %1":"Zeichne %1","Edit":"Editierbar","Edit alarm rules":"Alarmregeln bearbeiten","Elite Sportcars AT":"Elite Sportcars AT","Email CC:":"Email CC:","Email TO:":"Email An:","Email is sent to %1, please check your email account":"Die Email wurde an %1 gesendet, bitte prüfen Sie nun ob die Email dort angekommen ist","Email notification":"Benachrichtigung per Email","Email:":"Email-Adresse:","Enable GPRS roaming":"GPRS Roaming aktivieren","Enable to transfer alarms automatically to your REST Webservice. The data is transfered as key/value pair, please call the support to get the format description of the keys used":"Ermöglicht Alarme an Ihren REST Webservice weiterzuleiten. Die Beschreibung der Datenpaare mit allen Informationen des Alarms erhalten Sie auf Anfrage beim Support","End Date":"Enddatum","End date":"Enddatum","End-Date:":"Ablaufdatum:","Ended at:":"Beendet:","English en":"Englisch en","Enter an optional login name if your REST server expects one":"Tragen Sie den Anmeldename ein falls Ihr REST Server einen erwartet","Enter an optional password if your REST server expects one":"Tragen Sie das Passwort ein falls Ihr REST Server ein Passwort erwartet","Enter power save mode":"Tracker hat in den Stromsparmodus gewechselt","Enter texts which must match appropriate column:":"Filtertexte für entsprechende Spalten","Enter the HTTP URL to contact your REST server":"Bitte geben Sie den HTTP URL Aufruf Ihres REST-Servers ein","Enterprise":"Enterprise Tarif","Erase all POIs":"Alle POIs löschen","Erase selected POI":"Konfiguration löschen","Error: %1 %2":"Fehler: %1 %2","Error: <font color='%1'>%2</font>":"Fehler: <font color='%1'>%2</font>","Error: Timeout":"Fehler: Keine Antwort","Established a GPRS socket connection":"Verbindung zum Tracker aufgebaut","Event count:":"Stückzähler:","Event counter":"Stückzähler","Event log":"Ereignislog","Event log of %1":"Ereignislog von %1","Event to use:":"Auslösendes Ereignis:","Example: http://server.com/myIcon.png":"Beispiel: http://server.com/myIcon.png","Expert Mode":"Expertenmodus","Export":"Export","External power supply available":"Externe Spannung OK","External power supply lost":"Externe Spannung verloren","Family name":"Nachname","Fence No.:":"Geozaunnummer:","Filter":"Datumsfilter","First name:":"Vorname:","Footer text:":"Fußzeile:","Forstware":"Forstware","Fraction:":"Divisor:","Fractional count:":"Korrigiert:","Friday":"Freitag","From":"Von","From: ":"Von: ","From: %1":"Von: %1","GPS off, GSM off, GPRS off, G-sensor off":"GPS aus, GSM aus, GPRS aus, G-sensor aus","GPS off, GSM off, GPRS off, G-sensor on":"GPS aus, GSM aus, GPRS aus, G-sensor an","GPS off, GSM on, GPRS off, G-sensor off":"GPS aus, GSM an, GPRS aus, G-sensor aus","GPS off, GSM on, GPRS on, G-sensor on":"GPS aus, GSM an, GPRS an, G-sensor an","GPS-ZIP DE":"GPS-ZIP DE","GPSvision":"GPSvision","Gender:":"Geschlecht:","Geofence":"Geozäune","Geofence %1":"Geozaun '%1' speichern","Geofence details":"Geozaun-Details","Geofence enter":"Geozaun betreten","Geofence enter or leave":"Geozaun betreten oder verlassen","Geofence leave":"Geozaun verlassen","Geofence name:":"Geozaunname:","Geofence to use:":"Verwendeter Geozaun:","German Austria de_AT":"Deutsch/Österreich de_AT","German Switzerland de_CH":"Deutsch/Schweiz de_CH","German de_DE":"Deutsch de_DE","Get %1-device configuration":"Hole %1 Tracker-Konfiguration","Get DeviceMapping %1":"Hole Tracker '%1'","Get account %1":"Hole Konto %1","Get account failed: %1 %2":"Konnte Kontodaten nicht holen: %1 %2","Get account list":"Hole Kontoliste","Get account search fields failed: %1 %2":"Holen der Zugangs-Suchfelder ist fehlgeschlagen: %1 %2","Get alarm events":"Hole Alarmereignisse","Get buddies":"Hole Gruppenmitglieder","Get current configuration from device":"Hole aktuelle Konfiguration vom Gerät","Get device command list":"Hole Tracker-Kommandoliste","Get deviceMapping failed: %1 %2":"Konnte Tracker nicht laden: %1 %2","Get friend of":"Lade Gruppenmitgliedschaft","Get geofences":"Lade Geozäune","Get locations":"Lade Positionen","Get locations failed":"Ladefehler","Get locations failed: %1 %2":"Positionen konnten nicht abgefragt werden: %1 %2","Get locations timeout":"Zeitüberschreitung","Get locations timeout, no data to show":"Zeitüberschreitung, keine Datenanzeige","Get permissions":"Hole Rechte","Get replication info":"Hole Replikationsdetails","Get settings":"Hole Einstellungen","Get track names for %1":"Lade Routenliste für %1","Got valid GPS signal":"GPS Signal wieder OK","Granted to '%1'":"Erlaubt für '%1'","Green arrow":"grüner Pfeil","Green circle":"grüner Kreis","Green dot":"grüner Punkt","Green vector":"grüner Vektor","HSB":"HSB","Header icon link:":"Logo für Kopfzeile","Header text:":"Kopfzeile: ","Height [m]":"Höhe [m]","Height in m":"Höhe über Meer [m]","Height:":"Höhe:","Here you can configure your account":"Hier können Sie ihr Konto Ändern","Here you can configure your buddy %1 and give permissions":"Hier können Sie Kontodaten von '%1' Ändern und Rechte vergeben","Here you can see tracks of your buddy %1":"Hier sehen Sie die Routen von '%1'","Hex":"Hex","Hide":"Verstecken","Hiding %1":"Ausradieren von %1","Home view":"Heimansicht","How many times to repeat the period, 0 is forever, 1 is a timeout with half the period length":"Wie oft soll der Zyklus wiederholt werden; 0 ist unendlich oft. Wählen Sie 1 um den Ausgang für die Hälfte er Periodendauer zu aktivieren","Hungarian hu":"Ungarisch hu","IMEI:":"IMEI:","Icon":"Icon","Icon Chooser":"Icon Auswahl","Icons to show":"Anzahl Symbole","Id":"Id","If the device is offline an SMS is sent, this may take a minute or two":"Falls das Gerät nicht verbunden ist wird eine SMS gesendet, gedulden Sie sich in diesem Falle etwas","If the device is offline it should wake up, this may take a minute or two":"Falls das Gerät im Stromsparmodus und nicht verbunden ist sollte es aufwachen, bitte gedulden Sie sich für ein/zwei Minuten bis es sich verbindet","Ignoring received 'alarmChanged' of unknown device %1: %2":"Die erhaltene Alarmmeldung 'alarmChanged' von unbekanntem Gerät %1 wird ignoriert: %2","Ignoring received command list for device %1":"Die erhaltene Kommandoliste von %1 wird ignoriert","Ignoring received command list of unknown device %1":"Die erhaltene Kommandoliste des unbekannten Gerätes %1 wird ignoriert","Ignoring received properties of unknown device %1":"Wir ignorieren die erhaltenen Konfigurationsdaten vom unbekannten Gerät '%1'","Ignoring unknown NMEA data '%1'":"Wir ignorieren die unbekannten Positionsdaten von '%1'","Ignoring unknown message '%1'":"Wir ignorieren die unbekannte Meldung von '%1'","Info":"Alarmregel","Info ":"Info","Info:":"Sonstige Info:","Initially visible":"Initial sichtbar","Input Fields On Device":"Eingabefelder auf dem Handy","Input sensor 1 off":"Eingangssensor 1 aus","Input sensor 1 on":"Eingangssensor 1 ein","Input sensor 2 off":"Eingangssensor 2 aus","Input sensor 2 on":"Eingangssensor 2 ein","Input sensor 3 off":"Eingangssensor 3 aus","Input sensor 3 on":"Eingangssensor 3 ein","Input sensor 4 off":"Eingangssensor 4 aus","Input sensor 4 on":"Eingangssensor 4 ein","Input status:":"IO Status Eingänge","Input switch":"Eingangssensor","Input switch %1":"Eingangssensor %1","Input switch %1 '%2' is %3 at %4":"Eingangssensor %1 '%2' ist %3 (%4)","Input switch %1 is %2 at %3":"Eingangssensor %1 ist %2 um %3 Uhr","Internet Explorer has limitations, <a href='%1' target='_blank'>see details</a>":"Internet Explorer ist nur eingeschränkt nutzbar, <a href='%1' target='_blank'>Details</a>","Internet Explorer is not supported, please use the free <a href='http://www.mozilla.com' target='_blank'>Firefox</a>":"Internet Explorer wird nicht unterstützt, bitte kostenlosen <a href='http://www.mozilla.com' target='_blank'>Firefox</a> verwenden","Invalid IMEI/UDID (%1 digits expected): %2":"Ungültige IMEI/UDID (erwarte %1-stellige Nummer): '%2'","Invalid date '%1', example '2009-09-28'":"Unerlaubtes Datum '%1', Beispiel '2009-09-28'","Invalid email '%1', example 'order@gpsvision.de'":"Ungültige Emailadresse '%1'; Beispiel 'order@gpsvision.de'","Invalid end date '%1', example '2009-09-28'":"Ungültiges Enddatum '%1', Beispiel '2009-09-28'","Invalid loginName '%1', example 'mueller' (at least 5 chars)":"Ungültiger loginName '%1', z.B. 'mueller' (mindestens 5 kleine Buchstaben)","Invalid portal password: %1":"Ungültiges Portalpasswort '%1'","Invalid tracker password: %1":"Ungültiges Trackerpasswort '%1'","Invalid tracker phone number '%1'":"Ungültige Trackertelefonnummer '%1'","Invalid tracker phone number '%1', example '+49157734054'":"Ungültige Tracker Telefonnummer '%1'. Beispiel '+49157734054'","Is editable in browser":"Ist im Webbrowser editierbar","Is not supported by device":"Wird vom ausgewählten Gerät nicht unterstützt","Jetski AT":"Jetski AT","KML":"KML","Kilometer":"Kilometer","Kilometer per hour (metric system)":"Kilometer pro Stunde (metrisches System)","Language:":"Sprache:","Last month":"Vorheriger Monat","Last name:":"Nachname:","Last year":"Vorheriges Jahr","Lat / Lon":"Breite/Länge","Latitude":"Länge","Latitude/Longitude:":"Breite/Länge:","Latitude:":"Breite:","Left click: Remove our relation; Right click: Remove all relations between %1":"Linke Maustaste: Unsere Rechte löschen; Rechte Maustaste: Alle Beziehungen mit %1 löschen","Legal":"Rechtliches","Length of audio recording in seconds":"Länge der Sprachaufnahme in Sekunden","Limit the time range by setting up start and end date":"Zeitbereich mithilfe von Anfangs- und Enddatum einstellen.","Link to google maps:":"Link nach Google-Maps:","List choices, separated by ;  (Example: red;green;blue)":"Auswahlliste, mit Semikolon ';' getrennt eingeben (Beispiel: Rot;Grün;Blau)","Load":"Laden","Load from device":"Lade Daten vom Gerät","Loading ...":"Laden ...","Loading data for %1":"Lade Daten für %1","Loading home view failed: %1":"Das Laden der Heimansicht war nicht möglich: %1","Location of %1 is not known<br />Try start tracking first":"Postition von %1 ist nicht verfügbar<br /> Starten Sie das Senden von Ortungsdaten auf dem Tracker","Logged in as %1":"Angemeldet als %1","Login":"Anmelden","Login failed, please check your user name and password<br /><br /><b>%1</b>":"Anmeldung fehlgeschlagen, bitte prüfen Sie Ihren Namen (korrekte Groß/Kleinschreibung) und Ihr Passwort<br /><br /><b>%1</b>","Login failed, your maximum allowed login sessions are exhausted, please log out properly in future and wait some minutes to try again":"Anmeldung fehlgeschlagen, die maximale Anzahl gleichzeitiger Anmeldungen ist erschöpft. Bitte melden Sie sich immer mit dem Button ab. Probieren Sie in ein paar Minuten wieder.","Login is denied please check your login name and your password.":"Die Anmeldung war nicht möglich, bitte überprüfen Sie Ihren Anmeldenamen und das Passwort.","Login is denied please check your login name.":"Die Anmeldung war nicht möglich, bitte überprüfen Sie Ihren Anmeldenamen.","Login is denied please check your your password.":"Die Anmeldung war nicht möglich, bitte überprüfen Sie Ihr Passwort.","Login is not possible, the account is expired.":"Die Anmeldung ist nicht möglich, die Nutzungsdauer für das Benutzerkonto ist abgelaufen.","Login is not possible, the account is not active any more.":"Die Anmeldung ist nicht möglich, das Benutzerkonto ist deaktiviert.","Login name":"Anmeldename","Login name of buddy (case sensitive):":"Loginname des Gruppenmitgliedes (exakte Schreibweise):","Login name:":"Loginname:","Login problem":"Anmeldefehler","Login to server failed":"Die Anmeldung ist fehlgeschlagen.","Login vector":"Anmeldename Vektor","Login:":"Loginname:","Logout":"Abmelden","Logout problem":"Abmeldefehler","Longitude":"Breite","Longitude:":"Länge:","Lost GPS signal":"GPS Signal verloren","Lost the GPRS socket connection":"Verbindung zum Tracker verloren","Magicmaps DE":"Magicmaps DE","Make Phone Call:":"Anrufen:","Make a phone call to %1 (%2) using your phone %3":"Telefonanruf an %1 (%2) tätigen. Verwendet Ihr Telefon %3","Manage":"Bearbeiten","Manage Alarms":"Alarmereignisse Verwalten","Manage geofence definitions":"Geozaundefinitionen verwalten","Map":"Karte","Max SMS/Month:":"Max SMS pro Monat","Maximum SMS per month":"Ihr SMS Kontingent pro Monat","Medium | 9 Hours":"Mittel | 9 Stunden","Medium | GPS off, GSM off, GPRS off, G-sensor on":"Mittel | GPS aus, GSM aus, GPRS aus, G-sensor an","Menu label":"Menü-Beschriftung","Message is pushed to device<br /><br />Text: %1<br />Badge: %2<br />Sound: %3":"Die Nachricht ist versendet worden<br /><br />Text: %1<br />Zähler: %2<br />Klang: %3","Meter per minute (horse riding)":"Meter pro Minute (Pferdesport)","Meter per second (physics)":"Meter pro Sekunde (Physik)","Mile per hour (US, UK)":"Meilen pro Stunde (USA, England)","Minute per kilometer (jogging)":"Minuten pro Kilometer (Jogging)","Monday":"Montag","Mr.":"Herr","Mrs.":"Frau","My device avatar, configure attributes and add buddies":"Mein Logo. Konfiguration von Attributen und Anlegen von Gruppenmitgliedern","My online/battery status":"Batterie- & Onlinestatus sehen","Nautical mile per hour (sailing)":"Nautische Meilen pro Stunde (Segeln)","Netwake":"Netwake","New name":"Neuer Name","New password:":"Neues Passwort","Next month":"Nächster Monat","Next year":"Nächstes Jahr","No":"Nein","No alarm":"Kein Alarm","No icons":"Keine Kartensymbole","No matching rule found":"Es wurde keine passende Regel gefunden","No password change for public users":"Keine Passwort änderung für Gäste","No permission to change configuration of %1":"Sie haben keine Erlaubnis %1 zu konfigurieren","No permission to change tracking rate for public users":"Keine Rechte um Ortungsrate von öffentlichen Benutzern zu ändern","No permission to configure alarms of %1":"Sie haben keine Erlaubnis die Alarme von %1 zu konfigurieren","No permission to confirm alarms for %1":"Keine Erlaubnis die Alarme von %1 zu entfernen","No permission to see alarms of %1":"Keine Erlaubnis die Alarme von %1 zu sehen","No permission to send SMS for public users":"Sie haben keine Erlaubnis für den SMS Versand","No permission to view alarms of %1":"Sie haben keine Erlaubnis die Alarmereignisse von '%1' zu sehen","No phone number for voicecalls available":"Es ist keine Telefonummer für Anrufe hinterlegt","No position found to display on map":"Die Position ist unbekannt, deswegen keine Anzeige auf der Karte","No rows selected for report.</br><i>You can select multiple rows by holding shift/ctrl while clicking</i>":"Sie haben keine Zeilen für den Report gewählt.</br><i>Sie können mehrere Zeilen wählen in dem Sie die Hochstell/Steuerungstaste während dem Klicken drücken</i>","No rows selected to delete.</br><i>You can select multiple rows by holding shift/ctrl while clicking</i>":"Sie haben keine Zeilen zum löschen gewählt.</br><i>Sie können mehrere Zeilen wählen in dem Sie die Hochstell/Steuerungstaste während dem Klicken drücken</i>","No track 'changeSelected' for %1":"Interner Fehler: Route %1 bei 'changeSelected' existiert nicht","No tracking data found":"Keine Daten im Zeitraum","No tracking data found in the given time range":"Es wurden keine Positionsdaten im gewählten Zeitraum gefunden","No, I want to revise it":"Nein, überarbeiten","Nothing destroyed, %1 is still a <i>%2</i> user":"Nicht gelöscht, %1 ist immer noch ein <i>%2</i> Kunde","Nothing destroyed, you are still a <i>%1</i> user":"Keine Daten gelöscht, Sie sind immer noch ein <i>%1</i> Nutzer.","OEM:":"OEM Partner:","OK":"OK","Off":"Aus","Off Text":"Text falls AUS","Ok":"Ok","Old password:":"Altes Passwort","On":"Ein","On Text":"Text falls EIN","On/Off tracking on remote device:":"Ein/Ausschalten der Ortungsdatenübertragung","One device found":"Ein Gerät gefunden","One english landmile = 1.6093 kilometer":"Eine englische Landmeile =  1.6093 Kilometer","One nautical mile = 1.852 kilometer":"Eine Seemeile = 1.852 Kilometer","Open":"Offen","Open ColorSelector":"Öffne Farbauswahl","Open;Processing;Done":"Offen;In Bearbeitung;Erledigt","Orange circle":"orange Kreis","Orange vector":"orange Vektor","Other":"Sonstige","Output Actions":"Tracker-Ausgänge schalten","Output Actions On Alarm":"Ausgänge schalten nach Alarmauslösung","Output Control":"Output Einstellungen","Output status:":"IO Status Ausgänge","Overall Distance:":"Gesamte Distanz:","POI Config":"POI Konfiguration","POI Configurations":"POI Konfigurationen","POI Report":"POI Berichte","Password":"Passwort","Password / Account":"Passwort / Konto","Password:":"Passwort:","Period":"Periodendauer","Permission":"Tarif","Permission:":"Tarif:","Permissions I have got from '%1'":"Von '%1' gewährte Rechte","Phone call request to %1 (%2) is sent to your device %3<br /><br />Please check your phone.":"Telefonnummeranwahl an %1 (%2) ist an das Handy %3 gesendet worden.<br /><br />Bitte verwenden Sie nun Ihr Telefon.","Phone number:":"Benutzer-Telefonnummer:","Phonenumber:":"Telefonnummer des Trackers:","Photo":"Foto","Photo size, depends on your device (encoding type), example: encoding=jpeg&width=480&height=360&quality=normal":"Größe des Photos oder optionale Encoding-Eingabe Ihres Handys, Beispiel: encoding=jpeg&width=480&height=360&quality=normal","Ping intervall seconds:":"Prüfintervall Sekunden:","Pink circle":"rosa Kreis","Pink dot":"pinker Punkt","Pink vector":"rosa Vektor","Play sound":"Ton","Please check %1 alarms":"Bitte kontrollieren Sie %1 Alarmereignisse","Please check one alarm":"Bitte kontrollieren Sie das Alarmereignis","Please check your REST URL":"Überprüfen Sie bitte die REST URL","Please choose a destination address.":"Bitte wählen Sie einen Empfänger","Please choose a device first":"Bitte wählen Sie zuerst ein Gerät aus","Please choose a device.":"Bitte wählen Sie einen Tracker","Please choose a report or save the settings first":"Bitte wählen Sie zuerst einen Report oder speichern Sie Änderungen","Please choose a unique name":"Bitte wählen Sie einen eindeutigen Namen","Please choose distance entity":"Bitte wählen Sie die Einheit für die Distanzanzeige","Please choose speed entity":"Bitte wählen Sie die Einheit für die Geschwindigkeitsanzeige","Please enter a nick name to identify yourself<br /><i>for example 'Freddy', more than 3 characters, you can't change it during this session!</i>":"Bitte geben Sie einen Spitzname für Ihre Identität an<br /><i>zum Beispiel 'Markus', mehr als 3 Buchstaben, nicht änderbar während dieser Sitzung!</i>","Please enter a unique name for the new rule":"Bitte tragen Sie einen eindeutigen Namen für die neue Regel ein","Please enter a valid REST URI of your server":"Bitte geben sie eine gültige REST URI ihres Servers an.","Please enter a valid SMS phone number +49175... to test":"Bitte geben Sie eine gültige SMS Telefonnummer an, diese muss mit '+49' anfangen, z.B. '+4915100000","Please enter a valid email address to test":"Bitte geben Sie eine oder mehrere gültige Emailadresse ein","Please enter geofence name":"Bitte geben Sie einen eindeutigen Geozaunnamen ein","Please enter some text":"Bitte geben Sie eine Nachricht ein","Please enter the buddy login name, the name is case sensitive.":"Bitte geben Sie den Namen des Gruppenmitgliedes ein","Please enter the command to send to the phone<br /><i>for example 'doAction: xb start; gps start; tracking start'</i>":"Bitte geben Sie das Kommando für das Handy an<br /><i>z.B. 'doAction: xb start; gps start; tracking start'</i>","Please enter the phone number of your tracker in a valid format like '+491751111'":"Bitte geben Sie die Geräte-Telefonnummer in einem gültigen Format an. Beispiel: '+491751111'","Please enter your login name":"Bitte geben Sie Ihren Anmeldename ein","Please login first.":"Bitte loggen Sie sich zuerst ein","Please reload the battery [%1 %2%]":"Bitte laden Sie die Batterie [%1 %2%]","Please reload the battery [%1 %2V]":"Bitte laden Sie die Batterie [%1 %2V]","Please save changes first":"Bitte speichern Sie die Änderungen zuerst ab","Please select the day and time for this rule":"Bitte stellen Sie die Tage und die Zeiten für die Regel ein","Please watch the short 'one minute' help videos!":"Bitte schauen Sie sich die kurzen 'Ein-Minuten-Hilfevideos' an, es lohnt sich und geht ganz schnell!","Plot created (%1)":"Diagram geladen (%1)","Plot data %1/%2 ...":"Lade Diagramm %1/%2 ...","Point Of Interest Definition, created by: %1":"Definition einer Aufgabenmaske (POI), erzeugt von: %1","Port":"Schalter","Power Save":"Stromsparmodus","Power Save Mode":"Stromsparmodus","Power available [%1 %2%]":"Batterieladezustand ist OK [%1 %2%]","Power available [%1 %2V]":"Batterieladezustand ist OK [%1 %2V]","Power save mode configuration for %1 is not supported by device":"Stromsparmodus wird von Gerät %1 nicht unterstützt","Presets":"Voreinstellungen","Preview (Old/New)":"Vorschau (alt/neu)","Privacy Policy":"Datenschutzbestimmungen","Processing":"In Bearbeitung","Processing returnQosOrException failure":"Fehler beim Bearbeiten von returnQosOrException","Professional":"Professional Tarif","Push to phone":"Senden","Question":"Frage","REST Webservice Call":"REST Webservice Aufruf","RGB":"RGB","Raw configure device %1":"Administrative Pflege vom Tracker %1","Re-type new password:":"Neues Passwort nochmal","Reboot":"Gerät-Neustart","Reboot the device, current settings are not lost":"Gerät neu starten (aktuelle Einstellungen bleiben erhalten)","Rebooting is not available for this device type":"Ein Geräteneustart ist bei diesem Gerätetyp nicht möglich","Received %1":"%1 geladen","Received %1 buddies":"%1 Gruppenmitglieder erhalten","Received %1 friendOf":"%1 Gruppenmitgliedschaften erhalten","Received at":"Empfangen am","Red circle":"roter Kreis","Red dot":"roter Punkt","Red vector":"roter Vektor","Refresh":"Aktualisieren","Refresh GPS Data":"GPS Daten Aktualisieren","Relation to %1 is destroyed":"Alle Beziehungen mit %1 sind gelöscht","Remote configure device of %1":"Fernkonfiguration von Tracker %1","Remove %1 POI":"Löschen von %1 POI","Remove DeviceMapping %1":"Entferne Tracker '%1'","Remove account":"Lösche Konto","Remove buddy %1":"Gruppenmitglied %1 entfernen","Remove deviceMapping failed: %1 %2":"Tracker konnte nicht gelöscht werden: %1 %2","Remove filter":"Filter deaktivieren","Remove geofence %1":"Geozaun '%1' löschen","Remove rule %1":"Löschen von %1","Removing buddy %1":"Lösche Gruppenmitglied %1","Rendering %1 buddies":"Zeichne %1 Gruppenmitglieder","Rendering buddy %1/%2":"Zeichne Gruppenmitglied %1/%2","Repetitions":"Wiederholungen","Replication":"Replikation","Replication Administration":"Replikation Administration","Report '%1' is currently generated":"Report '%1' ist momentan in der Bearbeitung","Report Generator for %1":"Report für %1","Report description of '%1' is deleted":"Reportdefinition '%1' ist gelöscht worden","Report description of '%1' is saved":"Reportdefinition von '%1' wurde gespeichert","Report description of '%1' was not deleted: %2":"Reportdefinition von '%1' konnte nicht gespeichert werden: %2","Report description of '%1' was not saved: %2":"Reportdefinition von '%1' konnte nicht abgespeichert werden: %2","Report parameters":"Reportparameter","Report settings":"Reportdetails","Reset":"Zurücksetzen","Reset column widths":"Spaltenbreite zurücksetzen","Resetting OUT %1 because of alarm %2":"OUT %1 wegen Alarmregel %2 ausgeschaltet","Resize":"Größenanpassung","Response from REST:":"Antwort von REST:","Roaming switching is not available for this device type":"Roaming switching is not available for this device type","Row":"Zeile","Rule %1":"Regel %1","Rule Definitions":"Alarmregeln","Rule Type":"Regeltyp","Rule name":"Regelname","Rule name:":"Name der Regel:","Rule type:":"Alarmtyp:","Rules":"Alarmregeln","SIMNET CZ":"SIMNET CZ","SMS":"SMS","SMS is sent to %1, please check if application comes online in the next minutes.<br /><br />If not, check the battery status and GSM reception of your mobile phone":"Die SMS ist an %1 gesendet worden, die Anwendung sollte innerhalb weniger Minuten online sein.<br /><br />Falls nicht, prüfen Sie den Batterieladezustand, den GSM Netzempfang und das Guthaben.","SMS is sent to %1, please check your mobile phone":"SMS wurde an die Telefonnummer %1 gesendet<br />Bitte prüfen Sie nun am Handy ob die SMS ankommt","SMS notification":"Benachrichtigung per SMS","SOS button pressed":"SOS Knopf gedrückt","Saturday":"Samstag","Save":"Speichern","Save Display Settings":"Gewählte Symbole und Farben speichern","Save all changes":"Alles speichern","Save changes":"Änderungen speichern","Save rule %1":"Regel %1 speichern","Save settings":"Änderungen abspeichern","Save the changes made for %1":"Änderungen für %1 speichern","Save track settings for next login session?":"Sollen die Farben und Symbole für die nächste Anmeldung abgespeichert werden?","Scheduled task":"Terminauftrag","Screen title":"Bildschirmüberschrift","Search Accounts":"Portalzugänge suchen","See alarms":"Alarme sehen","See history tracks":"Alte Routen sehen","Segments to show":"Anzahl Linienabschnitte","Select home view":"Heimansicht auswählen","Select the document":"Wählen Sie den Report","Select the report layout template":"Wählen Sie die Reportvorlage","Selected Mode:":"Gewählter Modus:","Send":"Senden","Send Alarm To":"Alarm senden an ...","Send Alarm To Email/SMS":"Alarme an Email/SMS senden","Send Configuration":"Konfiguration senden","Send SMS":"SMS versenden","Send SMS to device %1":"SMS senden an %1","Send all":"Sende alle","Send and erase POI configurations on the devices. Caution: The device must be online (green icon)!":"POI Konfiguration an Gerät senden. Achtung: Das Smartphone muss verbunden sein (grünes Männchen)!","Send command to device":"Sende Kommando an Tracker","Send icon to device":"Symbol zum Handy senden","Send messages to me":"Meldungen an mich Senden","Send new tracking rate for %1":"Neue Ortungsrate für %1 gesendet","Send new tracking rate for %1.<br/><b>Note: The buddy is offline</b>":"Sende neue Ortungsrate für %1.<br/><b>Achtung: %1 ist momentan nicht erreichbar</b>","Send on course change of":"Sende bei Richtungsänderung größer als","Send request with all data chosen, this takes a few moments":"Reportgeneriereung mit den selektierten Daten, dies dauert etwas","Send selected POI":"Konfiguration senden","Send tracking rate command":"Sende Kommando für Ortungsrate (alle Häckchen weg schaltet Tracking aus)","Sending Apple push message to phone":"Apple Pushnachrichten an iPhone/iPad senden","Sending Emails is for customers only":"Das Senden von Emails ist nur für Kunden möglich","Sending SMS is for customers only":"Das Senden von SMS ist nur für Kunden möglich","Sending SMS to %1 failed!<br /><br />Please configure a phone number for this device.":"SMS konnte nicht an %1 gesendet werden!<br /><br />Bitte tragen Sie die Gerätetelefonnummer ein.","Sending a message:":"Nachricht senden","Sending power save mode configuration for %1":"Sende Stromsparmodus-Konfiguration an %1","Sending power save mode configuration for %1.<br/><b>Note: The buddy is offline</b>":"Sende Stromsparmodus-Konfiguration an %1. <br/><b>Hinweis: Das Gruppenmitglied ist momentan nicht erreichbar</b>","Server Exception":"Server Fehler","Server Exception during login, please try again.":"Server Fehler während dem Anmelden, bitte probieren Sie erneut.","Server Exception, %1 failed":"Server Fehler, %1 ist abgebrochen worden","Server Exception: Login failed, please check your user name and password<br /><br /><b>%1</b>":"Server Fehler: Die Anmeldung ist fehlgeschlagen, bitte prüfen Sie Ihren Namen (korrekte Groß/Kleinschreibung) und Ihr Passwort<br /><br /><b>%1</b>","Setting new command failed: %1":"Das neue Kommando konnte nicht gesetzt werden: %1","Setting new command failed:<br />%1":"Das neue Kommando konnte nicht gesetzt werden: <br />%1","Settings of %1":"Einstellungen von %1","Shall map be initially visible or hidden":"Soll die Karte initial aufgeklappt sein?","Show":"Zeigen","Show Tracks":"Zeige Routen","Show my position":"Position zeigen","Showing track failed":"Routenanzeige fehlgeschlagen","Sorry, can't call myself.":"Ich kann mich selbst leider nicht anrufen.","Sortable column":"Klick: Spalte wird sortiert","Sound":"Klang","Sound Notification":"Sound Benachrichtigung","Source Server:":"Quellserver","Speed and Height":"Geschwindigkeit und Höhe","Speed km/h":"Geschwindigkeit [km/h]","Speed km/h:":"Geschwindigkeit km/h:","Speed, Height and Course":"Alle Daten anzeigen","Speed:":"Geschwindigkeit:","Start Date":"Anfangsdatum","Start Date:":"Anfagsdatum:","Start Replication":"Replikation durchführen","Start Tracking":"Ortungsdaten Senden","Start counting":"Starte Stückzähler","Start replication %1":"Starte Replikation %1","Start/Stop tracking <b>%1</b> on the map":"Start/Stop - Tracken von <b>%1</b> auf der Karte","Started at:":"Gestartet:","Statistic":"Statistiken","Statistic Report":"Statistische Auswertung","Statistic is not available, please contact the support":"Statistiken sind nicht verfügbar, bitte wenden Sie sich an den Support","Status":"Status","Stop Tracking":"Ortung Stoppen","Stop counting":"Stoppe Stückzähler","Strong | 18 Hours":"Stark | 18 Stunden","Subject: <font color='%1'>%2</font>":"Betreff: <font color='%1'>%2</font>","Submit":"Bestätigen","Successfully changed account data for %1":"Kontodaten von %1 wurden geändert","Successfully changed password for %1":"Das Passwort für %1 wurde geändert","Sunday":"Sonntag","TK102/TK2000 SMS command:":"TK102/TK2000 SMS Befehl:","Table":"Tabelle","Table data %1/%2 ...":"Tabelle lade %1/%2 ...","Table loaded (%1)":"Tabelle geladen (%1)","Terms":"AGB","Test":"Test","Test Mail From Portal":"Test-Email vom Portal","Text":"Text","The Apple push device token of the phone is not known, no push is possible":"Ihre Geräte-ID für den Apple Push ist nicht bekannt, die Meldung kann nicht versendet werden","The account <b>%1</b> is NOT destroyed: %2":"Der Zugang <b>%1</b> wurde NICHT gelöscht: %2","The account <b>%1</b> is destroyed":"Der Zugang <b>%1</b> ist gelöscht worden","The buddy avatar, configure permissions":"Gruppenmitgliedstatus und Rechtevergabe","The containerId may not contain any of '/-,=@<>&' character, please change it":"Die containerId darf keine Sonderzeichen '/-,=@<>&' enthalten","The device supports 25 geofence-leave rules simulatneously (Technical note: 1 is mapped to event-ID 75)":"Das Gerät unterstützt 25 'Geozaun-Verlassen' Regeln gleichzeitig (Technischer Hinweis: 1 wird auf Event-ID 75 umgerechnet)","The geofence can't be removed, please remove the referencing rule(s) first":"Der Geozaun kann nicht gelöscht werden da er noch in ein einer Alarmregel verwendet wird","The home view <b>%1</b> has been deleted":"Die Heimansicht <b>%1</b> wurde gelöscht","The home view <b>%1</b> has been modified":"Die Heimansicht <b>%1</b> wurde geändert","The home view <b>%1</b> has been succesfully created":"Die neue Heimansicht <b>%1</b> wurde gespeichert","The home view <b>%1</b> has been succesfully modified and renamed to <b>%2</b>":"Die Heimansicht <b>%1</b> wurde geändert und umbenannt in <b>%2</b>","The new configuration is saved on the server.<br /><span style='color:green'>The tracker is configured already correctly, no command needs to be send</span>":"Die neuen Einstellungen wurden auf dem Server gespeichert.<br /><span style='color:green'>Der Tracker ist schon korrekt konfiguriert, es werden keine Befehle gesendet</span>","The new configuration is saved on the server.<br />The following command is sent to the tracker, please check the response:<br /><span style='color:green'>%1</span>":"Die neuen Einstellungen wurden auf dem Server gespeichert.<br />Der folgende Befehl wurde an den Tracker gesendet, bitte prüfen Sie die Trackerantwort:<br /><span style='color:green'>%1</span>","The new configuration is saved on the server.<br />The following commands are sent to the tracker, please check the responses:<br /><span style='color:green'>%1</span>":"Die neuen Einstellungen wurden auf dem Server gespeichert.<br />Die folgenden Befehle wurden an den Tracker gesendet, bitte prüfen Sie die Trackerantworten:<br /><span style='color:green'>%1</span>","The new configuration will only take effect if your device is reachable. <br> <br> Are you sure that your device is online (green LED)?":"Die neue Konfiguration wird nur in Kraft treten wenn das Gerät erreichbar ist. <br> <br> Sind Sie sicher, dass Ihr Gerät online ist (grüne LED)?","The new permissions are saved":"Die neuen Rechte sind gespeichert","The phone call is triggered for %1":"Der Anruf wurde für %1 aktiviert<br /><i>Falls das Gerät im Stromsparmodus und nicht verbunden ist sollte es in Kürze aufwachen</i>","The report will be send to the given email address":"Der Report wird zur angegebenen Emailadresse gesendet","The settings are stored permanently: %1":"Die Einstellungen sind gespeichert worden: %1","This account does not support changing of rules":"Dieses Benutzerkonto erlaubt kein Ändern von Regeln","This field is required":"Dieses Feld ist erforderlich","This home view name is too long":"Der Name der Heimansicht ist zu lang (max. 20 Zeichen)","This home view name is too short":"Der Name der Heimansicht ist zu kurz","Thursday":"Donnerstag","Time for a complete on - off cycle. First, the output is switched on for half a period, then turned off for the other half":"Periodendauer eines An/Aus Intervalls. Zuerst wird der Ausgang aktiviert, danach in der zweiten Hälfte der Periode ausgeschalten","Time vector":"Zeit Vektor","Time:":"Uhrzeit:","Time: ":"Dauer: ","Timeout":"Zeitüberschreitung","Timeout, no response after %1 sec":"Kein Antwort nach %1 Sekunden","Timeout, there is no response from the device":"Zeitüberschreitung, wir haben vom Tracker keine Antwort erhalten","Timestamp":"Zeitstempel","Timezone:":"Zeitzone:","To":"An","To device":"Mitsenden","To: ":"An: ","To: %1":"An: %1","Toggle roaming mode":"Roamingmodus umschalten","Total distance in kilometers":"Gesamte Distanz in Kilometer","Total elapsed time":"Gesamte Zeitdauer","Track Display Settings":"Ortungs Anzeigeeinstellungen","Track Name [%1]":"Routenname [%1]","Track Name [...]":"Routenname [...]","Track Name [NO PERM]":"Routenname [Keine Erlaubnis]","Track now":"Ortungsdaten Anzeigen","Track:":"Route:","Tracker command:":"Gerätekommando","Tracker connection lost":"Verbindung zum Tracker verloren","Tracker is moved away from last fix":"Tracker hat sich von letzten Standort wegbewegt","Tracker is outside allowed speed":"Die Trackergeschwindigkeit ist außerhalb des erlaubten Bereiches","Tracker is sending locations with GPRS":"Tracker sendet seine Position über schnelles GPRS","Tracker is sending locations with SMS":"Tracker sendet seine Position über normale SMS","Trackerphone":"Tracker Telefonnummer","Tracking Icon":"Routensymbol","Tracking Rate":"Ortungsrate","Tracking Rate On Alarm":"Ortungsrate nach Alarmauslösung","Trial Access":"Testzugang","Triggered at":"Ereignis vom","Tuesday":"Dienstag","Type":"Alarmtyp","Type:":"Typ:","URL/FORM parameter":"URL/FORM Parameter","Unique report name:":"Reportname:","Unit":"Einheit","Unknown rule type":"Unbekannte Regel","Until: ":"Bis: ","Upper Left (Long,Lat):":"Oben links (Länge/Breite):","Use Shift+Mouseclick to select a subset of GPS positions in the Table and calculate average values":"Selektieren Sie eine Teilmenge in der Tabelle mit Umschalt-Klick","Used SMS this month (at last login)":"Diesen Monat verbrauchte SMS (zum Anmeldezeitpunkt)","User Account:":"Benutzerzugang","User Admin":"Kontoadministration","User Administration":"Benutzeradministration","Using above time range":"obige Zeitspanne","Using above time range or selected rows":"obige Zeitspanne oder markierte Reihen","V originally]":"V intern]","Vector":"Vektor","Video-Help":"Videohilfe","View Config":"Details","Violett circle":"violetter Kreis","Violett vector":"violetter Vektor","Visual":"Visuell","Wake up command":"Kommando zum Starten","Waking up from power save mode":"Tracker ist vom Stromsparmodus aufgewacht","Warning: <font color='%1'>Device is not connected. An SMS is sent and we are now waiting for the SMS response from the device ...</font>":"Achtung: <font color='%1'>Das Gerät ist nicht verbunden. Eine SMS wurde gesendet und wir warten nun auf die SMS Antwort des Gerätes ...</font>","Warning: <font color='%1'>Device is not connected. The command is queued and will be send when device connects next time</font>":"Achtung: <font color='%1'>Das Gerät ist nicht verbunden. Der Befehl wird in die Warteschlange gestellt und beim nächsten Verbindungsaufbau gesendet</font>","Watchee":"Watchee","Wednesday":"Mittwoch","What to do with unsaved Entries?":"Es gibt nicht gespeicherte Änderungen","White circle":"weißer Kreis","White vector":"weißer Vektor","Width of segment":"Linienbreite (Pixel)","Will append '&_loginName=joe&_password=blabla' to the called URL":"Wird den angegebenen Anmeldename und das Passwort als URL Parameter übergeben: '&_loginName=joe&_password=blabla'","Will send given login name and password with a 'Basic authentication HTTP header' according to RFC 2617":"Wird den Anmeldenamen und das Passwort mit einem 'Basic authentication HTTP header' übertragen, entprechend RFC 2617","XSMS-From:":"XSMS Absender:","XSMS-Message:":"XSMS Text:","XSMS-Send-Date:":"XSMS Sendedatum:","XSMS-To:":"XSMS Empfänger:","Y-Axis":"Y-Achse","Yellow circle":"gelber Kreis","Yellow dot":"gelber Punkt","Yellow vector":"gelber Vektor","Yes":"Ja","Yes, save it":"Ja, speichern","You are not allowed to assign more than %1 geofences":"Sie können maximal %1 Geozäune erstellen","You can select multiple items by holding <b> Ctrl </b> while clicking.":"Mehrfachauswahl durch drücken von <b> Strg </b> während dem anklicken.","You have <b>no</b> permission to see alarms":"Sie haben <b>keine</b> Erlaubnis die Alarmereignisse zu sehen","You have <b>no</b> permission to see current location":"Sie haben <b>keine</b> Erlaubnis die aktuelle Position zu sehen","You have <b>no</b> permission to see history tracks":"Sie haben <b>keine</b> Erlaubnis die alten Routen zu sehen","You have <b>no</b> permission to see online status":"Sie haben <b>keine</b> keine Rechte um den Onlinestatus zu sehen","You have <b>no</b> permission to track <b>%1</b> on the map":"Sie haben <b>keine</b> Rechte um <b>%1</b> auf der Karte zu tracken","You have <b>no</b> permission to track on the map":"Sie haben <b>keine</b> Erlaubnis zur Routenverfolgung","You have no configuration permission from buddy '%1'":"Sie haben keine Konfigurationsberechtigung für '%1'","You have no permission get history track %1 for  %2":"Sie haben keine Berechtigung die Positionen %1 von %2 zu sehen","You have no permission to change the device phone number":"Sie haben keine Erlaubnis die Telefonnummer des Tracker zu ändern","You have no permission to configure %1":"Sie haben keine Berechtigung um %1 zu konfigurieren","You have no permission to give the device a call":"Sie haben keine Berechtigung für Telefonanrufe","You have no permission to load device configuration":"Sie haben keine Rechte um die Geräteeinstellungen abzufragen","You have no permission to reboot the device":"Sie haben keine Berechtigung um einen Geräteneustart durchzuführen","You have no permission to see location of %1":"Sie haben keine Rechte um die Position von %1 zu sehen","You have no permission to send push messages to iPad or iPhone":"Sie haben keine Erlaubnis Push-Nachrichten an ein iPad oder iPhone zu senden","You have no permission to switch on or off tracking":"Sie haben keine Erlaubnis die Ortung an- oder auszuschalten","You have no permission to toggle roaming":"Sie haben keine Rechte um den Roamingmodus umzuschalten","You have not permission to change the password":"Sie haben keine Erlaubnis das Passwort zu ändern","You have not permission to destroy me":"Sie haben keine Erlaubnis mich zu vernichten","You have permission to see current location":"Aktuelle Position darf gesehen werden","You have permission to see history tracks":"Die alten Routen dürfen aufgerufen werden","You new password must be at least 5 characters long":"Ihr neues Passwort muss mindestens 5 Zeichen enthalten","Your 're-type'  password is different, please enter again":"Die Eingaben des neuen Passworts sind unterschiedlich","Your account expires in %1 days. <a href='%2' target='_blank'>Renew now</a>":"Ihre Lizenz endet in %1 Tagen. <a href='%2' target='_blank'>Erneuern</a>","Your account expires today. <a href='%1' target='_blank'>Renew now</a>":"Die Lizenz läuft heute aus! <a href='%1' target='_blank'>Erneuern</a>","Your account expires tomorrow. <a href='%2' target='_blank'>Renew now</a>":"Ihre Lizenz läuft morgen aus! <a href='%2' target='_blank'>Erneuern</a>","Your account is expired since %1 days. <a href='%2' target='_blank'>Renew now</a>":"Das Benutzerkonto ist seit %1 Tagen abgelaufen. <a href='%2' target='_blank'>Erneuern</a>","Your browser does not support playing native audio, but you can download the file":"Ihr Webbrowser unterstützt keine Tonwiedergabe, alternativ können Sie die Datei herunterladen","Your buddy <b>%1</b> is offline":"<b>%1</b> ist nicht erreichbar","Your buddy <b>%1</b> is online %2":"Ihr Gruppenmitglied <b>%1</b> ist online %2","Your command to send":"Kommando wird auf dem Handy ausgeführt","Your contract expires at":"Ihr Vertrag läuft aus am","Your email address %1 is validated":"Ihre Emailadresse %1 funktioniert","Your old password is not correct":"Ihr altes Passwort ist nicht korrekt","Your password is not correct":"Ihr Passwort stimmt nicht","Your query did not find any data, please check your settings (account, start data, end date)":"Ihre Anfrage hat keine Daten gefunden, bitte prüfen Sie den gewählten Gerätenamen sowie das Start- und Enddatum","Your request '%1' failed":"Anfrage '%1' ist fehlgeschlagen","Your sender nick-name":"Ihr Aliasname","Zeppelin":"Zeppelin","Zoom level":"Zoomfaktor","[new account]":"[Neues Konto Anlegen]","[new company]":"[Neue Firma Anlegen]","a":"a","a position":"eine Position","activated":"aktiviert","assert: TrackGui.getTracks() is called without loginName":"Interner Fehler: TrackGui.getTracks() Aufruf ohne loginName","audio":"Sprachnotiz","b":"b","barcode/QRCode":"Barcode/QRCode","bool":"Wahr/Falsch","cleverID DE":"cleverID DE","d ":"T ","degree a position":"Grad eine Position","editable":"Editierbar","float":"Kommastellenzahl","h":"h","h ":"h ","image":"Photo","inactive":"nicht aktiv","int":"Ganze Zahl","is a new name":"Ist ein neuer Name","km":"km","km/h":"km/h","knots":"Knoten","list":"Auflistung","m":"m","m ":"M ","m/min":"m/min","m/sec":"m/sek","map":"Karte","miles":"Meilen","min":"Min","min ":"m ","min/km":"min/km","mph":"mph","one of one row":"Eine von einer Zeile","one row":"Eine Zeile","sec":"s","signature":"Unterschrift","sm":"sm","string":"Freier Text","v [km/h]":"v [km/h]","xSMS":"xSMS","xSMS is sent to %1<br /><i>%2</i>":"Meldung wurde an %1 gesendet<br /><i>%2</i>","y ":"J "},"en":{"Login name":"Login name","Password":"Password"},"fr":{"%1 does not fit %2.":"%1 ne correspond pas à %2.","%1 is not a color! %2":"%1 n'est pas une couleur ! %2","%1 is not a number.":"%1 n'est pas un chiffre.","%1 is not a string.":"%1 n'est pas une chaîne de caractères.","%1 is not an url.":"%1 n'est pas un URL.","%1 is not in %2":"%1 n'est pas dans %2","%1 is not in the range from [%2, %3].":"%1 n'est pas dans l'intervalle [%2, %3].","%1 of %2 rows":"ligne %1 de %2","%1 rows":"%1 lignes","'%1' is not an email address.":"'%1'n'est pas une adresse email.","Automatic":"Automatique","Cancel":"Annuler","Color Selector":"Sélecteur de couleurs","Details":"Détails","HSB":"TSV","Hex":"Hex","Last month":"Mois dernier","Last year":"Année dernière","Next month":"Mois prochain","Next year":"Année prochaine","OK":"OK","Open ColorSelector":"Ouvrir le sélecteur de couleurs","Presets":"Pré-réglages","Preview (Old/New)":"Aperçu (Ancien/Nouveau)","RGB":"RVB","Reset column widths":"Réinitialiser la largeur des colonnes","This field is required":"ce champ est requis","one of one row":"ligne une de une","one row":"une ligne"}}};
(function(){var m="toString",k=".",j="default",h="Object",g='"',f="Array",e="()",d="String",c="Function",b=".prototype",L="function",K="Boolean",J="Error",I="constructor",H="warn",G="hasOwnProperty",F="string",E="toLocaleString",D="RegExp",C='\", "',t="info",u="BROKEN_IE",r="isPrototypeOf",s="Date",p="",q="qx.Bootstrap",n="]",o="Class",v="error",w="[Class ",y="valueOf",x="Number",A="count",z="debug",B="ES5";
if(!window.qx){window.qx={};
}qx.Bootstrap={genericToString:function(){return w+this.classname+n;
},createNamespace:function(name,M){var O=name.split(k);
var parent=window;
var N=O[0];

for(var i=0,P=O.length-1;i<P;i++,N=O[i]){if(!parent[N]){parent=parent[N]={};
}else{parent=parent[N];
}}parent[N]=M;
return N;
},setDisplayName:function(Q,R,name){Q.displayName=R+k+name+e;
},setDisplayNames:function(S,T){for(var name in S){var U=S[name];

if(U instanceof Function){U.displayName=T+k+name+e;
}}},define:function(name,V){if(!V){var V={statics:{}};
}var bb;
var Y=null;
qx.Bootstrap.setDisplayNames(V.statics,name);

if(V.members||V.extend){qx.Bootstrap.setDisplayNames(V.members,name+b);
bb=V.construct||new Function;

if(V.extend){this.extendClass(bb,bb,V.extend,name,ba);
}var W=V.statics||{};
for(var i=0,bc=qx.Bootstrap.getKeys(W),l=bc.length;i<l;i++){var bd=bc[i];
bb[bd]=W[bd];
}Y=bb.prototype;
var X=V.members||{};
for(var i=0,bc=qx.Bootstrap.getKeys(X),l=bc.length;i<l;i++){var bd=bc[i];
Y[bd]=X[bd];
}}else{bb=V.statics||{};
}var ba=this.createNamespace(name,bb);
bb.name=bb.classname=name;
bb.basename=ba;
bb.$$type=o;
if(!bb.hasOwnProperty(m)){bb.toString=this.genericToString;
}if(V.defer){V.defer(bb,Y);
}qx.Bootstrap.$$registry[name]=V.statics;
return bb;
}};
qx.Bootstrap.define(q,{statics:{LOADSTART:qx.$$start||new Date(),DEBUG:(function(){var be=true;

if(qx.$$environment&&qx.$$environment["qx.debug"]===false){be=false;
}return be;
})(),getEnvironmentSetting:function(bf){if(qx.$$environment){return qx.$$environment[bf];
}},setEnvironmentSetting:function(bg,bh){if(!qx.$$environment){qx.$$environment={};
}
if(qx.$$environment[bg]===undefined){qx.$$environment[bg]=bh;
}},createNamespace:qx.Bootstrap.createNamespace,define:qx.Bootstrap.define,setDisplayName:qx.Bootstrap.setDisplayName,setDisplayNames:qx.Bootstrap.setDisplayNames,genericToString:qx.Bootstrap.genericToString,extendClass:function(bi,bj,bk,name,bl){var bo=bk.prototype;
var bn=new Function;
bn.prototype=bo;
var bm=new bn;
bi.prototype=bm;
bm.name=bm.classname=name;
bm.basename=bl;
bj.base=bi.superclass=bk;
bj.self=bi.constructor=bm.constructor=bi;
},getByName:function(name){return qx.Bootstrap.$$registry[name];
},$$registry:{},objectGetLength:({"count":function(bp){return bp.__count__;
},"default":function(bq){var length=0;

for(var br in bq){length++;
}return length;
}})[(({}).__count__==0)?A:j],objectMergeWith:function(bs,bt,bu){if(bu===undefined){bu=true;
}
for(var bv in bt){if(bu||bs[bv]===undefined){bs[bv]=bt[bv];
}}return bs;
},__a:[r,G,E,m,y,I],getKeys:({"ES5":Object.keys,"BROKEN_IE":function(bw){var bx=[];
var bz=Object.prototype.hasOwnProperty;

for(var bA in bw){if(bz.call(bw,bA)){bx.push(bA);
}}var by=qx.Bootstrap.__a;

for(var i=0,a=by,l=a.length;i<l;i++){if(bz.call(bw,a[i])){bx.push(a[i]);
}}return bx;
},"default":function(bB){var bC=[];
var bD=Object.prototype.hasOwnProperty;

for(var bE in bB){if(bD.call(bB,bE)){bC.push(bE);
}}return bC;
}})[typeof (Object.keys)==L?B:(function(){for(var bF in {toString:1}){return bF;
}})()!==m?u:j],getKeysAsString:function(bG){var bH=qx.Bootstrap.getKeys(bG);

if(bH.length==0){return p;
}return g+bH.join(C)+g;
},__b:{"[object String]":d,"[object Array]":f,"[object Object]":h,"[object RegExp]":D,"[object Number]":x,"[object Boolean]":K,"[object Date]":s,"[object Function]":c,"[object Error]":J},bind:function(bI,self,bJ){var bK=Array.prototype.slice.call(arguments,2,arguments.length);
return function(){var bL=Array.prototype.slice.call(arguments,0,arguments.length);
return bI.apply(self,bK.concat(bL));
};
},firstUp:function(bM){return bM.charAt(0).toUpperCase()+bM.substr(1);
},firstLow:function(bN){return bN.charAt(0).toLowerCase()+bN.substr(1);
},getClass:function(bO){var bP=Object.prototype.toString.call(bO);
return (qx.Bootstrap.__b[bP]||bP.slice(8,-1));
},isString:function(bQ){return (bQ!==null&&(typeof bQ===F||qx.Bootstrap.getClass(bQ)==d||bQ instanceof String||(!!bQ&&!!bQ.$$isString)));
},isArray:function(bR){return (bR!==null&&(bR instanceof Array||(bR&&qx.data&&qx.data.IListData&&qx.Bootstrap.hasInterface(bR.constructor,qx.data.IListData))||qx.Bootstrap.getClass(bR)==f||(!!bR&&!!bR.$$isArray)));
},isObject:function(bS){return (bS!==undefined&&bS!==null&&qx.Bootstrap.getClass(bS)==h);
},isFunction:function(bT){return qx.Bootstrap.getClass(bT)==c;
},classIsDefined:function(name){return qx.Bootstrap.getByName(name)!==undefined;
},getPropertyDefinition:function(bU,name){while(bU){if(bU.$$properties&&bU.$$properties[name]){return bU.$$properties[name];
}bU=bU.superclass;
}return null;
},hasProperty:function(bV,name){return !!qx.Bootstrap.getPropertyDefinition(bV,name);
},getEventType:function(bW,name){var bW=bW.constructor;

while(bW.superclass){if(bW.$$events&&bW.$$events[name]!==undefined){return bW.$$events[name];
}bW=bW.superclass;
}return null;
},supportsEvent:function(bX,name){return !!qx.Bootstrap.getEventType(bX,name);
},getByInterface:function(bY,ca){var cb,i,l;

while(bY){if(bY.$$implements){cb=bY.$$flatImplements;

for(i=0,l=cb.length;i<l;i++){if(cb[i]===ca){return bY;
}}}bY=bY.superclass;
}return null;
},hasInterface:function(cc,cd){return !!qx.Bootstrap.getByInterface(cc,cd);
},getMixins:function(ce){var cf=[];

while(ce){if(ce.$$includes){cf.push.apply(cf,ce.$$flatIncludes);
}ce=ce.superclass;
}return cf;
},$$logs:[],debug:function(cg,ch){qx.Bootstrap.$$logs.push([z,arguments]);
},info:function(ci,cj){qx.Bootstrap.$$logs.push([t,arguments]);
},warn:function(ck,cl){qx.Bootstrap.$$logs.push([H,arguments]);
},error:function(cm,cn){qx.Bootstrap.$$logs.push([v,arguments]);
},trace:function(co){}}});
})();
(function(){var bA="default",bz="|",by="qx.allowUrlSettings",bx="qx.bom.client.Html.getDataset",bw="qx.bom.client.PhoneGap.getPhoneGap",bv="qx.bom.client.Html.getAudioAif",bu="qx.bom.client.Css.getBoxShadow",bt="qx.bom.client.Html.getXul",bs="qx.bom.client.Plugin.getWindowsMedia",br="qx.bom.client.Html.getVideo",bg="qx.bom.client.Device.getName",bf="qx.bom.client.Event.getTouch",be="qx.optimization.strings",bd="qx.optimization.variables",bc="qx.bom.client.EcmaScript.getObjectCount",bb="qx.dynlocale",ba="qx.bom.client.Engine.getVersion",Y="qx.bom.client.Plugin.getQuicktime",X="qx.propertyDebugLevel",W="qx.bom.client.Html.getDataUrl",bH="qx.bom.client.Flash.isAvailable",bI="qx.bom.client.Html.getCanvas",bF="qx.bom.client.Css.getBoxModel",bG="qx.bom.client.Plugin.getSilverlight",bD="module.property",bE="qx.bom.client.Plugin.getWindowsMediaVersion",bB="qx.bom.client.Locale.getLocale",bC="module.events",bJ="module.databinding",bK="qx.bom.client.Html.getFileReader",bk="qx.bom.client.Plugin.getDivXVersion",bj="qx.bom.client.Plugin.getPdfVersion",bm=":",bl="qx.bom.client.Transport.getXmlHttpRequest",bo="qx.bom.client.Html.getClassList",bn="qx.optimization.comments",bq="qx.bom.client.Locale.getVariant",bp="qx.bom.client.OperatingSystem.getName",bi="module.logger",bh="qx.mobile.emulatetouch",a="qx.bom.client.Html.getAudioWav",b="qx.bom.client.Browser.getName",c="qx.bom.client.Plugin.getPdf",d="qx.bom.client.Html.getAudio",e="qx.core.Environment",f="qx.debug.dispose",g="qx.bom.client.Css.getPlaceholder",h="false",j="qxenv",k="qx.bom.client.Html.getSessionStorage",bO="qx.bom.client.Html.getAudioAu",bN="qx.bom.client.Css.getTranslate3d",bM="qx.bom.client.Html.getVml",bL="qx.bom.client.Transport.getMaxConcurrentRequestCount",bS="qx.bom.client.Css.getRgba",bR="qx.bom.client.Css.getBorderRadius",bQ="qx.bom.client.Event.getPointer",bP="qx.bom.client.Css.getGradients",bU="qx.bom.client.Transport.getSsl",bT="qx.bom.client.Html.getWebWorker",G="qx.bom.client.Json.getJson",H="qx.bom.client.Browser.getQuirksMode",E="qx.bom.client.Css.getTextOverflow",F="qx.bom.client.Html.getVideoOgg",K="&",L="qx.bom.client.Browser.getDocumentMode",I="qx.allowUrlVariants",J=".",C="qx.debug.databinding",D="qx.optimization.basecalls",s="qx.bom.client.Browser.getVersion",r="true",u="qx.bom.client.Html.getSvg",t="qx.optimization.privates",o="qx.bom.client.Plugin.getDivX",n="qx.bom.client.Runtime.getName",q="qx.bom.client.Html.getLocalStorage",p="qx.bom.client.Flash.getStrictSecurityModel",m="qx.aspects",l="qx.debug",Q="qx.dynamicmousewheel",R="qx.bom.client.Html.getAudioMp3",S="qx.bom.client.Engine.getName",T="qx.bom.client.Plugin.getGears",M="qx.bom.client.Plugin.getQuicktimeVersion",N="qx.bom.client.Html.getAudioOgg",O="qx.bom.client.Plugin.getSilverlightVersion",P="qx.bom.client.Flash.getExpressInstall",U="qx.bom.client.OperatingSystem.getVersion",V="qx.bom.client.Html.getXPath",B="qx.bom.client.Html.getGeoLocation",A="qx.mobile.nativescroll",z="qx.optimization.variants",y="qx.bom.client.Html.getVideoWebm",x="qx.bom.client.Flash.getVersion",w="qx.bom.client.PhoneGap.getNotification",v="qx.bom.client.Html.getVideoH264";
qx.Bootstrap.define(e,{statics:{_checks:{},_asyncChecks:{},__c:{},_checksMap:{"engine.version":ba,"engine.name":S,"browser.name":b,"browser.version":s,"browser.documentmode":L,"browser.quirksmode":H,"runtime.name":n,"device.name":bg,"locale":bB,"locale.variant":bq,"os.name":bp,"os.version":U,"plugin.gears":T,"plugin.quicktime":Y,"plugin.quicktime.version":M,"plugin.windowsmedia":bs,"plugin.windowsmedia.version":bE,"plugin.divx":o,"plugin.divx.version":bk,"plugin.silverlight":bG,"plugin.silverlight.version":O,"plugin.flash":bH,"plugin.flash.version":x,"plugin.flash.express":P,"plugin.flash.strictsecurity":p,"plugin.pdf":c,"plugin.pdf.version":bj,"io.maxrequests":bL,"io.ssl":bU,"io.xhr":bl,"event.touch":bf,"event.pointer":bQ,"ecmascript.objectcount":bc,"html.webworker":bT,"html.filereader":bK,"html.geolocation":B,"html.audio":d,"html.audio.ogg":N,"html.audio.mp3":R,"html.audio.wav":a,"html.audio.au":bO,"html.audio.aif":bv,"html.video":br,"html.video.ogg":F,"html.video.h264":v,"html.video.webm":y,"html.storage.local":q,"html.storage.session":k,"html.classlist":bo,"html.xpath":V,"html.xul":bt,"html.canvas":bI,"html.svg":u,"html.vml":bM,"html.dataset":bx,"html.dataurl":W,"json":G,"css.textoverflow":E,"css.placeholder":g,"css.borderradius":bR,"css.boxshadow":bu,"css.gradients":bP,"css.boxmodel":bF,"css.translate3d":bN,"css.rgba":bS,"phonegap":bw,"phonegap.notification":w},requireAll:null,get:function(bV){if(this.__c[bV]!=undefined){return this.__c[bV];
}var bY=this._checks[bV];

if(bY){var ca=bY();
this.__c[bV]=ca;
return ca;
}var bX=this._getClassNameFromEnvKey(bV);

if(bX[0]!=undefined){var cb=bX[0];
var bW=bX[1];
var ca=cb[bW]();
this.__c[bV]=ca;
return ca;
}if(qx.Bootstrap.DEBUG){qx.Bootstrap.warn(bV+" is not a valid key. Please see the API-doc of "+"qx.core.Environment for a list of predefined keys.");
qx.Bootstrap.trace(this);
}},_getClassNameFromEnvKey:function(cc){var ci=this._checksMap;

if(ci[cc]!=undefined){var ce=ci[cc];
var ch=ce.lastIndexOf(J);

if(ch>-1){var cg=ce.slice(0,ch);
var cd=ce.slice(ch+1);
var cf=qx.Bootstrap.getByName(cg);

if(cf!=undefined){return [cf,cd];
}}}return [undefined,undefined];
},getAsync:function(cj,ck,self){var co=this;

if(this.__c[cj]!=undefined){window.setTimeout(function(){ck.call(self,co.__c[cj]);
},0);
return;
}var cn=this._asyncChecks[cj];

if(cn){cn(function(cq){co.__c[cj]=cq;
ck.call(self,cq);
});
return;
}var cm=this._getClassNameFromEnvKey(cj);

if(cm[0]!=undefined){var cp=cm[0];
var cl=cm[1];
cp[cl](function(cr){co.__c[cj]=cr;
ck.call(self,cr);
});
return;
}if(qx.Bootstrap.DEBUG){qx.Bootstrap.warn(cj+" is not a valid key. Please see the API-doc of "+"qx.core.Environment for a list of predefined keys.");
qx.Bootstrap.trace(this);
}},select:function(cs,ct){return this.__d(this.get(cs),ct);
},selectAsync:function(cu,cv,self){this.getAsync(cu,function(cw){var cx=this.__d(cu,cv);
cx.call(self,cw);
},this);
},__d:function(cy,cz){var cB=cz[cy];

if(cz.hasOwnProperty(cy)){return cB;
}for(var cA in cz){if(cA.indexOf(bz)!=-1){var cC=cA.split(bz);

for(var i=0;i<cC.length;i++){if(cC[i]==cy){return cz[cA];
}}}}
if(cz[bA]!==undefined){return cz[bA];
}
if(qx.Bootstrap.DEBUG){throw new Error('No match for variant "'+cy+'" ('+(typeof cy)+' type)'+' in variants ['+qx.Bootstrap.getKeysAsString(cz)+'] found, and no default ("default") given');
}},filter:function(cD){var cF=[];

for(var cE in cD){if(this.get(cE)){cF.push(cD[cE]);
}}return cF;
},invalidateCacheKey:function(cG){delete this.__c[cG];
},add:function(cH,cI){if(this._checks[cH]==undefined){if(cI instanceof Function){this._checks[cH]=cI;
}else{this._checks[cH]=this.__g(cI);
}}},addAsync:function(cJ,cK){if(this._checks[cJ]==undefined){this._asyncChecks[cJ]=cK;
}},_initDefaultQxValues:function(){this.add(by,function(){return false;
});
this.add(I,function(){return false;
});
this.add(X,function(){return 0;
});
this.add(l,function(){return true;
});
this.add(m,function(){return false;
});
this.add(bb,function(){return true;
});
this.add(bh,function(){return false;
});
this.add(A,function(){return false;
});
this.add(Q,function(){return true;
});
this.add(C,function(){return false;
});
this.add(f,function(){return false;
});
this.add(D,function(){return false;
});
this.add(bn,function(){return false;
});
this.add(t,function(){return false;
});
this.add(be,function(){return false;
});
this.add(bd,function(){return false;
});
this.add(z,function(){return false;
});
this.add(bJ,function(){return true;
});
this.add(bi,function(){return true;
});
this.add(bD,function(){return true;
});
this.add(bC,function(){return true;
});
},__e:function(){if(qx&&qx.$$environment){for(var cM in qx.$$environment){var cL=qx.$$environment[cM];
this._checks[cM]=this.__g(cL);
}}},__f:function(){if(window.document&&window.document.location){var cN=window.document.location.search.slice(1).split(K);

for(var i=0;i<cN.length;i++){var cP=cN[i].split(bm);

if(cP.length!=3||cP[0]!=j){continue;
}var cQ=cP[1];
var cO=decodeURIComponent(cP[2]);
if(cO==r){cO=true;
}else if(cO==h){cO=false;
}else if(/^(\d|\.)+$/.test(cO)){cO=parseFloat(cO);
}this._checks[cQ]=this.__g(cO);
}}},__g:function(cR){return qx.Bootstrap.bind(function(cS){return cS;
},null,cR);
},useCheck:function(cT){return true;
}},defer:function(cU){cU._initDefaultQxValues();
cU.__e();
if(cU.get(by)===true){cU.__f();
}}});
})();
(function(){var h="qx.Mixin",g=".prototype",f="constructor",e="Array",d="[Mixin ",c="]",b="destruct",a="Mixin";
qx.Bootstrap.define(h,{statics:{define:function(name,j){if(j){if(j.include&&!(qx.Bootstrap.getClass(j.include)===e)){j.include=[j.include];
}var m=j.statics?j.statics:{};
qx.Bootstrap.setDisplayNames(m,name);

for(var k in m){if(m[k] instanceof Function){m[k].$$mixin=m;
}}if(j.construct){m.$$constructor=j.construct;
qx.Bootstrap.setDisplayName(j.construct,name,f);
}
if(j.include){m.$$includes=j.include;
}
if(j.properties){m.$$properties=j.properties;
}
if(j.members){m.$$members=j.members;
qx.Bootstrap.setDisplayNames(j.members,name+g);
}
for(var k in m.$$members){if(m.$$members[k] instanceof Function){m.$$members[k].$$mixin=m;
}}
if(j.events){m.$$events=j.events;
}
if(j.destruct){m.$$destructor=j.destruct;
qx.Bootstrap.setDisplayName(j.destruct,name,b);
}}else{var m={};
}m.$$type=a;
m.name=name;
m.toString=this.genericToString;
m.basename=qx.Bootstrap.createNamespace(name,m);
this.$$registry[name]=m;
return m;
},checkCompatibility:function(n){var q=this.flatten(n);
var r=q.length;

if(r<2){return true;
}var u={};
var t={};
var s={};
var p;

for(var i=0;i<r;i++){p=q[i];

for(var o in p.events){if(s[o]){throw new Error('Conflict between mixin "'+p.name+'" and "'+s[o]+'" in member "'+o+'"!');
}s[o]=p.name;
}
for(var o in p.properties){if(u[o]){throw new Error('Conflict between mixin "'+p.name+'" and "'+u[o]+'" in property "'+o+'"!');
}u[o]=p.name;
}
for(var o in p.members){if(t[o]){throw new Error('Conflict between mixin "'+p.name+'" and "'+t[o]+'" in member "'+o+'"!');
}t[o]=p.name;
}}return true;
},isCompatible:function(v,w){var x=qx.Bootstrap.getMixins(w);
x.push(v);
return qx.Mixin.checkCompatibility(x);
},getByName:function(name){return this.$$registry[name];
},isDefined:function(name){return this.getByName(name)!==undefined;
},getTotalNumber:function(){return qx.Bootstrap.objectGetLength(this.$$registry);
},flatten:function(y){if(!y){return [];
}var z=y.concat();

for(var i=0,l=y.length;i<l;i++){if(y[i].$$includes){z.push.apply(z,this.flatten(y[i].$$includes));
}}return z;
},genericToString:function(){return d+this.name+c;
},$$registry:{},__h:null,__i:function(){}}});
})();
(function(){var j="function",h="Boolean",g="qx.Interface",f="Array",e="]",d="toggle",c="Interface",b="is",a="[Interface ";
qx.Bootstrap.define(g,{statics:{define:function(name,k){if(k){if(k.extend&&!(qx.Bootstrap.getClass(k.extend)===f)){k.extend=[k.extend];
}var m=k.statics?k.statics:{};
if(k.extend){m.$$extends=k.extend;
}
if(k.properties){m.$$properties=k.properties;
}
if(k.members){m.$$members=k.members;
}
if(k.events){m.$$events=k.events;
}}else{var m={};
}m.$$type=c;
m.name=name;
m.toString=this.genericToString;
m.basename=qx.Bootstrap.createNamespace(name,m);
qx.Interface.$$registry[name]=m;
return m;
},getByName:function(name){return this.$$registry[name];
},isDefined:function(name){return this.getByName(name)!==undefined;
},getTotalNumber:function(){return qx.Bootstrap.objectGetLength(this.$$registry);
},flatten:function(n){if(!n){return [];
}var o=n.concat();

for(var i=0,l=n.length;i<l;i++){if(n[i].$$extends){o.push.apply(o,this.flatten(n[i].$$extends));
}}return o;
},__j:function(p,q,r,s){var w=r.$$members;

if(w){for(var v in w){if(qx.Bootstrap.isFunction(w[v])){var u=this.__k(q,v);
var t=u||qx.Bootstrap.isFunction(p[v]);

if(!t){throw new Error('Implementation of method "'+v+'" is missing in class "'+q.classname+'" required by interface "'+r.name+'"');
}var x=s===true&&!u&&!qx.Bootstrap.hasInterface(q,r);

if(x){p[v]=this.__n(r,p[v],v,w[v]);
}}else{if(typeof p[v]===undefined){if(typeof p[v]!==j){throw new Error('Implementation of member "'+v+'" is missing in class "'+q.classname+'" required by interface "'+r.name+'"');
}}}}}},__k:function(y,z){var D=z.match(/^(is|toggle|get|set|reset)(.*)$/);

if(!D){return false;
}var A=qx.Bootstrap.firstLow(D[2]);
var B=qx.Bootstrap.getPropertyDefinition(y,A);

if(!B){return false;
}var C=D[0]==b||D[0]==d;

if(C){return qx.Bootstrap.getPropertyDefinition(y,A).check==h;
}return true;
},__l:function(E,F){if(F.$$properties){for(var G in F.$$properties){if(!qx.Bootstrap.getPropertyDefinition(E,G)){throw new Error('The property "'+G+'" is not supported by Class "'+E.classname+'"!');
}}}},__m:function(H,I){if(I.$$events){for(var J in I.$$events){if(!qx.Bootstrap.supportsEvent(H,J)){throw new Error('The event "'+J+'" is not supported by Class "'+H.classname+'"!');
}}}},assertObject:function(K,L){var N=K.constructor;
this.__j(K,N,L,false);
this.__l(N,L);
this.__m(N,L);
var M=L.$$extends;

if(M){for(var i=0,l=M.length;i<l;i++){this.assertObject(K,M[i]);
}}},assert:function(O,P,Q){this.__j(O.prototype,O,P,Q);
this.__l(O,P);
this.__m(O,P);
var R=P.$$extends;

if(R){for(var i=0,l=R.length;i<l;i++){this.assert(O,R[i],Q);
}}},genericToString:function(){return a+this.name+e;
},$$registry:{},__n:function(){},__h:null,__i:function(){}}});
})();
(function(){var d="qx.core.Aspect",c="before",b="*",a="static";
qx.Bootstrap.define(d,{statics:{__o:[],wrap:function(e,f,g){var m=[];
var h=[];
var l=this.__o;
var k;

for(var i=0;i<l.length;i++){k=l[i];

if((k.type==null||g==k.type||k.type==b)&&(k.name==null||e.match(k.name))){k.pos==-1?m.push(k.fcn):h.push(k.fcn);
}}
if(m.length===0&&h.length===0){return f;
}var j=function(){for(var i=0;i<m.length;i++){m[i].call(this,e,f,g,arguments);
}var n=f.apply(this,arguments);

for(var i=0;i<h.length;i++){h[i].call(this,e,f,g,arguments,n);
}return n;
};

if(g!==a){j.self=f.self;
j.base=f.base;
}f.wrapper=j;
j.original=f;
return j;
},addAdvice:function(o,p,q,name){this.__o.push({fcn:o,pos:p===c?-1:1,type:q,name:name});
}}});
})();
(function(){var g="emulated",f="native",e='"',d="qx.lang.Core",c="\\\\",b="\\\"",a="[object Error]";
qx.Bootstrap.define(d,{statics:{errorToString:{"native":Error.prototype.toString,"emulated":function(){return this.message;
}}[(!Error.prototype.toString||Error.prototype.toString()==a)?g:f],arrayIndexOf:{"native":Array.prototype.indexOf,"emulated":function(h,j){if(j==null){j=0;
}else if(j<0){j=Math.max(0,this.length+j);
}
for(var i=j;i<this.length;i++){if(this[i]===h){return i;
}}return -1;
}}[Array.prototype.indexOf?f:g],arrayLastIndexOf:{"native":Array.prototype.lastIndexOf,"emulated":function(k,m){if(m==null){m=this.length-1;
}else if(m<0){m=Math.max(0,this.length+m);
}
for(var i=m;i>=0;i--){if(this[i]===k){return i;
}}return -1;
}}[Array.prototype.lastIndexOf?f:g],arrayForEach:{"native":Array.prototype.forEach,"emulated":function(n,o){var l=this.length;

for(var i=0;i<l;i++){var p=this[i];

if(p!==undefined){n.call(o||window,p,i,this);
}}}}[Array.prototype.forEach?f:g],arrayFilter:{"native":Array.prototype.filter,"emulated":function(q,r){var s=[];
var l=this.length;

for(var i=0;i<l;i++){var t=this[i];

if(t!==undefined){if(q.call(r||window,t,i,this)){s.push(this[i]);
}}}return s;
}}[Array.prototype.filter?f:g],arrayMap:{"native":Array.prototype.map,"emulated":function(u,v){var w=[];
var l=this.length;

for(var i=0;i<l;i++){var x=this[i];

if(x!==undefined){w[i]=u.call(v||window,x,i,this);
}}return w;
}}[Array.prototype.map?f:g],arraySome:{"native":Array.prototype.some,"emulated":function(y,z){var l=this.length;

for(var i=0;i<l;i++){var A=this[i];

if(A!==undefined){if(y.call(z||window,A,i,this)){return true;
}}}return false;
}}[Array.prototype.some?f:g],arrayEvery:{"native":Array.prototype.every,"emulated":function(B,C){var l=this.length;

for(var i=0;i<l;i++){var D=this[i];

if(D!==undefined){if(!B.call(C||window,D,i,this)){return false;
}}}return true;
}}[Array.prototype.every?f:g],stringQuote:{"native":String.prototype.quote,"emulated":function(){return e+this.replace(/\\/g,c).replace(/\"/g,b)+e;
}}[String.prototype.quote?f:g]}});
Error.prototype.toString=qx.lang.Core.errorToString;
Array.prototype.indexOf=qx.lang.Core.arrayIndexOf;
Array.prototype.lastIndexOf=qx.lang.Core.arrayLastIndexOf;
Array.prototype.forEach=qx.lang.Core.arrayForEach;
Array.prototype.filter=qx.lang.Core.arrayFilter;
Array.prototype.map=qx.lang.Core.arrayMap;
Array.prototype.some=qx.lang.Core.arraySome;
Array.prototype.every=qx.lang.Core.arrayEvery;
String.prototype.quote=qx.lang.Core.stringQuote;
})();
(function(){var bB=';',bA='return this.',bz="string",by="boolean",bx='!==undefined)',bw="this.",bv="",bu="set",bt="setThemed",bs="resetThemed",bh='else if(this.',bg="reset",bf="setRuntime",be="init",bd="();",bc='else ',bb='if(this.',ba="resetRuntime",Y="return this.",X="get",bI=";",bJ="(a[",bG=' of an instance of ',bH="refresh",bE=' is not (yet) ready!");',bF="]);",bC='qx.lang.Type.isString(value) && qx.util.ColorUtil.isValidPropertyValue(value)',bD='value !== null && qx.theme.manager.Font.getInstance().isDynamic(value)',bK='value !== null && value.nodeType === 9 && value.documentElement',bL='value !== null && value.$$type === "Mixin"',bl='return init;',bk='var init=this.',bn='value !== null && value.nodeType === 1 && value.attributes',bm="var parent = this.getLayoutParent();",bp="Error in property ",bo='qx.core.Assert.assertInstance(value, Date, msg) || true',br="if (!parent) return;",bq=" in method ",bj='qx.core.Assert.assertInstance(value, Error, msg) || true',bi='Undefined value is not allowed!',b="inherit",c='Is invalid!',d="MSIE 6.0",e="': ",f=" of class ",g='value !== null && value.nodeType !== undefined',h='value !== null && qx.theme.manager.Decoration.getInstance().isValidPropertyValue(value)',j="module.events",k='qx.core.Assert.assertPositiveInteger(value, msg) || true',m='if(init==qx.core.Property.$$inherit)init=null;',bP='value !== null && value.$$type === "Interface"',bO='var inherit=prop.$$inherit;',bN="var value = parent.",bM="$$useinit_",bT="(value);",bS='Requires exactly one argument!',bR="$$runtime_",bQ="$$user_",bV='qx.core.Assert.assertArray(value, msg) || true',bU='qx.core.Assert.assertPositiveNumber(value, msg) || true',H="Boolean",I='return value;',F='if(init==qx.core.Property.$$inherit)throw new Error("Inheritable property ',G='Does not allow any arguments!',L="()",M="var a=arguments[0] instanceof Array?arguments[0]:arguments;",J='value !== null && value.$$type === "Theme"',K="())",D='return null;',E='qx.core.Assert.assertObject(value, msg) || true',u='qx.core.Assert.assertString(value, msg) || true',t="if (value===undefined) value = parent.",w='value !== null && value.$$type === "Class"',v='qx.core.Assert.assertFunction(value, msg) || true',q="object",p="$$init_",s="$$theme_",r='qx.core.Assert.assertMap(value, msg) || true',o='qx.core.Assert.assertNumber(value, msg) || true',n='Null value is not allowed!',R='qx.core.Assert.assertInteger(value, msg) || true',S="rv:1.8.1",T="shorthand",U='qx.core.Assert.assertInstance(value, RegExp, msg) || true',N='value !== null && value.type !== undefined',O='value !== null && value.document',P='throw new Error("Property ',Q="(!this.",V='qx.core.Assert.assertBoolean(value, msg) || true',W="toggle",C="$$inherit_",B=" with incoming value '",A="a=qx.lang.Array.fromShortHand(qx.lang.Array.fromArguments(a));",z="qx.core.Property",y="is",x='Could not change or apply init value after constructing phase!';
qx.Bootstrap.define(z,{statics:{__p:function(){if(qx.core.Environment.get(j)){qx.event.type.Data;
qx.event.dispatch.Direct;
}},__q:{"Boolean":V,"String":u,"Number":o,"Integer":R,"PositiveNumber":bU,"PositiveInteger":k,"Error":bj,"RegExp":U,"Object":E,"Array":bV,"Map":r,"Function":v,"Date":bo,"Node":g,"Element":bn,"Document":bK,"Window":O,"Event":N,"Class":w,"Mixin":bL,"Interface":bP,"Theme":J,"Color":bC,"Decorator":h,"Font":bD},__r:{"Node":true,"Element":true,"Document":true,"Window":true,"Event":true},$$inherit:b,$$store:{runtime:{},user:{},theme:{},inherit:{},init:{},useinit:{}},$$method:{get:{},set:{},reset:{},init:{},refresh:{},setRuntime:{},resetRuntime:{},setThemed:{},resetThemed:{}},$$allowedKeys:{name:bz,dereference:by,inheritable:by,nullable:by,themeable:by,refine:by,init:null,apply:bz,event:bz,check:null,transform:bz,deferredInit:by,validate:null},$$allowedGroupKeys:{name:bz,group:q,mode:bz,themeable:by},$$inheritable:{},__s:function(bW){var bX=this.__t(bW);

if(!bX.length){var bY=function(){};
}else{bY=this.__u(bX);
}bW.prototype.$$refreshInheritables=bY;
},__t:function(ca){var cc=[];

while(ca){var cb=ca.$$properties;

if(cb){for(var name in this.$$inheritable){if(cb[name]&&cb[name].inheritable){cc.push(name);
}}}ca=ca.superclass;
}return cc;
},__u:function(cd){var ch=this.$$store.inherit;
var cg=this.$$store.init;
var cf=this.$$method.refresh;
var ce=[bm,br];

for(var i=0,l=cd.length;i<l;i++){var name=cd[i];
ce.push(bN,ch[name],bI,t,cg[name],bI,bw,cf[name],bT);
}return new Function(ce.join(bv));
},attachRefreshInheritables:function(ci){ci.prototype.$$refreshInheritables=function(){qx.core.Property.__s(ci);
return this.$$refreshInheritables();
};
},attachMethods:function(cj,name,ck){ck.group?this.__v(cj,ck,name):this.__w(cj,ck,name);
},__v:function(cl,cm,name){var ct=qx.Bootstrap.firstUp(name);
var cs=cl.prototype;
var cu=cm.themeable===true;
var cv=[];
var cp=[];

if(cu){var cn=[];
var cr=[];
}var cq=M;
cv.push(cq);

if(cu){cn.push(cq);
}
if(cm.mode==T){var co=A;
cv.push(co);

if(cu){cn.push(co);
}}
for(var i=0,a=cm.group,l=a.length;i<l;i++){cv.push(bw,this.$$method.set[a[i]],bJ,i,bF);
cp.push(bw,this.$$method.reset[a[i]],bd);

if(cu){cn.push(bw,this.$$method.setThemed[a[i]],bJ,i,bF);
cr.push(bw,this.$$method.resetThemed[a[i]],bd);
}}this.$$method.set[name]=bu+ct;
cs[this.$$method.set[name]]=new Function(cv.join(bv));
this.$$method.reset[name]=bg+ct;
cs[this.$$method.reset[name]]=new Function(cp.join(bv));

if(cu){this.$$method.setThemed[name]=bt+ct;
cs[this.$$method.setThemed[name]]=new Function(cn.join(bv));
this.$$method.resetThemed[name]=bs+ct;
cs[this.$$method.resetThemed[name]]=new Function(cr.join(bv));
}},__w:function(cw,cx,name){var cz=qx.Bootstrap.firstUp(name);
var cB=cw.prototype;
if(cx.dereference===undefined&&typeof cx.check===bz){cx.dereference=this.__x(cx.check);
}var cA=this.$$method;
var cy=this.$$store;
cy.runtime[name]=bR+name;
cy.user[name]=bQ+name;
cy.theme[name]=s+name;
cy.init[name]=p+name;
cy.inherit[name]=C+name;
cy.useinit[name]=bM+name;
cA.get[name]=X+cz;
cB[cA.get[name]]=function(){return qx.core.Property.executeOptimizedGetter(this,cw,name,X);
};
cA.set[name]=bu+cz;
cB[cA.set[name]]=function(cC){return qx.core.Property.executeOptimizedSetter(this,cw,name,bu,arguments);
};
cA.reset[name]=bg+cz;
cB[cA.reset[name]]=function(){return qx.core.Property.executeOptimizedSetter(this,cw,name,bg);
};

if(cx.inheritable||cx.apply||cx.event||cx.deferredInit){cA.init[name]=be+cz;
cB[cA.init[name]]=function(cD){return qx.core.Property.executeOptimizedSetter(this,cw,name,be,arguments);
};
}
if(cx.inheritable){cA.refresh[name]=bH+cz;
cB[cA.refresh[name]]=function(cE){return qx.core.Property.executeOptimizedSetter(this,cw,name,bH,arguments);
};
}cA.setRuntime[name]=bf+cz;
cB[cA.setRuntime[name]]=function(cF){return qx.core.Property.executeOptimizedSetter(this,cw,name,bf,arguments);
};
cA.resetRuntime[name]=ba+cz;
cB[cA.resetRuntime[name]]=function(){return qx.core.Property.executeOptimizedSetter(this,cw,name,ba);
};

if(cx.themeable){cA.setThemed[name]=bt+cz;
cB[cA.setThemed[name]]=function(cG){return qx.core.Property.executeOptimizedSetter(this,cw,name,bt,arguments);
};
cA.resetThemed[name]=bs+cz;
cB[cA.resetThemed[name]]=function(){return qx.core.Property.executeOptimizedSetter(this,cw,name,bs);
};
}
if(cx.check===H){cB[W+cz]=new Function(Y+cA.set[name]+Q+cA.get[name]+K);
cB[y+cz]=new Function(Y+cA.get[name]+L);
}},__x:function(cH){return !!this.__r[cH];
},__y:function(cI){return this.__r[cI]||qx.Bootstrap.classIsDefined(cI)||(qx.Interface&&qx.Interface.isDefined(cI));
},__z:{0:x,1:bS,2:bi,3:G,4:n,5:c},error:function(cJ,cK,cL,cM,cN){var cO=cJ.constructor.classname;
var cP=bp+cL+f+cO+bq+this.$$method[cM][cL]+B+cN+e;
throw new Error(cP+(this.__z[cK]||"Unknown reason: "+cK));
},__A:function(cQ,cR,name,cS,cT,cU){var cV=this.$$method[cS][name];
{cR[cV]=new Function("value",cT.join(""));
};
if(qx.core.Environment.get("qx.aspects")){cR[cV]=qx.core.Aspect.wrap(cQ.classname+"."+cV,cR[cV],"property");
}qx.Bootstrap.setDisplayName(cR[cV],cQ.classname+".prototype",cV);
if(cU===undefined){return cQ[cV]();
}else{return cQ[cV](cU[0]);
}},executeOptimizedGetter:function(cW,cX,name,cY){var db=cX.$$properties[name];
var dd=cX.prototype;
var da=[];
var dc=this.$$store;
da.push(bb,dc.runtime[name],bx);
da.push(bA,dc.runtime[name],bB);

if(db.inheritable){da.push(bh,dc.inherit[name],bx);
da.push(bA,dc.inherit[name],bB);
da.push(bc);
}da.push(bb,dc.user[name],bx);
da.push(bA,dc.user[name],bB);

if(db.themeable){da.push(bh,dc.theme[name],bx);
da.push(bA,dc.theme[name],bB);
}
if(db.deferredInit&&db.init===undefined){da.push(bh,dc.init[name],bx);
da.push(bA,dc.init[name],bB);
}da.push(bc);

if(db.init!==undefined){if(db.inheritable){da.push(bk,dc.init[name],bB);

if(db.nullable){da.push(m);
}else if(db.init!==undefined){da.push(bA,dc.init[name],bB);
}else{da.push(F,name,bG,cX.classname,bE);
}da.push(bl);
}else{da.push(bA,dc.init[name],bB);
}}else if(db.inheritable||db.nullable){da.push(D);
}else{da.push(P,name,bG,cX.classname,bE);
}return this.__A(cW,dd,name,cY,da);
},executeOptimizedSetter:function(de,df,name,dg,dh){var dm=df.$$properties[name];
var dl=df.prototype;
var dj=[];
var di=dg===bu||dg===bt||dg===bf||(dg===be&&dm.init===undefined);
var dk=dm.apply||dm.event||dm.inheritable;
var dn=this.__B(dg,name);
this.__C(dj,dm,name,dg,di);

if(di){this.__D(dj,df,dm,name);
}
if(dk){this.__E(dj,di,dn,dg);
}
if(dm.inheritable){dj.push(bO);
}
if(!dk){this.__G(dj,name,dg,di);
}else{this.__H(dj,dm,name,dg,di);
}
if(dm.inheritable){this.__I(dj,dm,name,dg);
}else if(dk){this.__J(dj,dm,name,dg);
}
if(dk){this.__K(dj,dm,name);
if(dm.inheritable&&dl._getChildren){this.__L(dj,name);
}}if(di){dj.push(I);
}return this.__A(de,dl,name,dg,dj,dh);
},__B:function(dp,name){if(dp==="setRuntime"||dp==="resetRuntime"){var dq=this.$$store.runtime[name];
}else if(dp==="setThemed"||dp==="resetThemed"){dq=this.$$store.theme[name];
}else if(dp==="init"){dq=this.$$store.init[name];
}else{dq=this.$$store.user[name];
}return dq;
},__C:function(dr,ds,name,dt,du){{if(!ds.nullable||ds.check||ds.inheritable){dr.push('var prop=qx.core.Property;');
}if(dt==="set"){dr.push('if(value===undefined)prop.error(this,2,"',name,'","',dt,'",value);');
}};
},__D:function(dv,dw,dx,name){if(dx.transform){dv.push('value=this.',dx.transform,'(value);');
}if(dx.validate){if(typeof dx.validate==="string"){dv.push('this.',dx.validate,'(value);');
}else if(dx.validate instanceof Function){dv.push(dw.classname,'.$$properties.',name);
dv.push('.validate.call(this, value);');
}}},__E:function(dy,dz,dA,dB){var dC=(dB==="reset"||dB==="resetThemed"||dB==="resetRuntime");

if(dz){dy.push('if(this.',dA,'===value)return value;');
}else if(dC){dy.push('if(this.',dA,'===undefined)return;');
}},__F:undefined,__G:function(dD,name,dE,dF){if(dE==="setRuntime"){dD.push('this.',this.$$store.runtime[name],'=value;');
}else if(dE==="resetRuntime"){dD.push('if(this.',this.$$store.runtime[name],'!==undefined)');
dD.push('delete this.',this.$$store.runtime[name],';');
}else if(dE==="set"){dD.push('this.',this.$$store.user[name],'=value;');
}else if(dE==="reset"){dD.push('if(this.',this.$$store.user[name],'!==undefined)');
dD.push('delete this.',this.$$store.user[name],';');
}else if(dE==="setThemed"){dD.push('this.',this.$$store.theme[name],'=value;');
}else if(dE==="resetThemed"){dD.push('if(this.',this.$$store.theme[name],'!==undefined)');
dD.push('delete this.',this.$$store.theme[name],';');
}else if(dE==="init"&&dF){dD.push('this.',this.$$store.init[name],'=value;');
}},__H:function(dG,dH,name,dI,dJ){if(dH.inheritable){dG.push('var computed, old=this.',this.$$store.inherit[name],';');
}else{dG.push('var computed, old;');
}dG.push('if(this.',this.$$store.runtime[name],'!==undefined){');

if(dI==="setRuntime"){dG.push('computed=this.',this.$$store.runtime[name],'=value;');
}else if(dI==="resetRuntime"){dG.push('delete this.',this.$$store.runtime[name],';');
dG.push('if(this.',this.$$store.user[name],'!==undefined)');
dG.push('computed=this.',this.$$store.user[name],';');
dG.push('else if(this.',this.$$store.theme[name],'!==undefined)');
dG.push('computed=this.',this.$$store.theme[name],';');
dG.push('else if(this.',this.$$store.init[name],'!==undefined){');
dG.push('computed=this.',this.$$store.init[name],';');
dG.push('this.',this.$$store.useinit[name],'=true;');
dG.push('}');
}else{dG.push('old=computed=this.',this.$$store.runtime[name],';');
if(dI==="set"){dG.push('this.',this.$$store.user[name],'=value;');
}else if(dI==="reset"){dG.push('delete this.',this.$$store.user[name],';');
}else if(dI==="setThemed"){dG.push('this.',this.$$store.theme[name],'=value;');
}else if(dI==="resetThemed"){dG.push('delete this.',this.$$store.theme[name],';');
}else if(dI==="init"&&dJ){dG.push('this.',this.$$store.init[name],'=value;');
}}dG.push('}');
dG.push('else if(this.',this.$$store.user[name],'!==undefined){');

if(dI==="set"){if(!dH.inheritable){dG.push('old=this.',this.$$store.user[name],';');
}dG.push('computed=this.',this.$$store.user[name],'=value;');
}else if(dI==="reset"){if(!dH.inheritable){dG.push('old=this.',this.$$store.user[name],';');
}dG.push('delete this.',this.$$store.user[name],';');
dG.push('if(this.',this.$$store.runtime[name],'!==undefined)');
dG.push('computed=this.',this.$$store.runtime[name],';');
dG.push('if(this.',this.$$store.theme[name],'!==undefined)');
dG.push('computed=this.',this.$$store.theme[name],';');
dG.push('else if(this.',this.$$store.init[name],'!==undefined){');
dG.push('computed=this.',this.$$store.init[name],';');
dG.push('this.',this.$$store.useinit[name],'=true;');
dG.push('}');
}else{if(dI==="setRuntime"){dG.push('computed=this.',this.$$store.runtime[name],'=value;');
}else if(dH.inheritable){dG.push('computed=this.',this.$$store.user[name],';');
}else{dG.push('old=computed=this.',this.$$store.user[name],';');
}if(dI==="setThemed"){dG.push('this.',this.$$store.theme[name],'=value;');
}else if(dI==="resetThemed"){dG.push('delete this.',this.$$store.theme[name],';');
}else if(dI==="init"&&dJ){dG.push('this.',this.$$store.init[name],'=value;');
}}dG.push('}');
if(dH.themeable){dG.push('else if(this.',this.$$store.theme[name],'!==undefined){');

if(!dH.inheritable){dG.push('old=this.',this.$$store.theme[name],';');
}
if(dI==="setRuntime"){dG.push('computed=this.',this.$$store.runtime[name],'=value;');
}else if(dI==="set"){dG.push('computed=this.',this.$$store.user[name],'=value;');
}else if(dI==="setThemed"){dG.push('computed=this.',this.$$store.theme[name],'=value;');
}else if(dI==="resetThemed"){dG.push('delete this.',this.$$store.theme[name],';');
dG.push('if(this.',this.$$store.init[name],'!==undefined){');
dG.push('computed=this.',this.$$store.init[name],';');
dG.push('this.',this.$$store.useinit[name],'=true;');
dG.push('}');
}else if(dI==="init"){if(dJ){dG.push('this.',this.$$store.init[name],'=value;');
}dG.push('computed=this.',this.$$store.theme[name],';');
}else if(dI==="refresh"){dG.push('computed=this.',this.$$store.theme[name],';');
}dG.push('}');
}dG.push('else if(this.',this.$$store.useinit[name],'){');

if(!dH.inheritable){dG.push('old=this.',this.$$store.init[name],';');
}
if(dI==="init"){if(dJ){dG.push('computed=this.',this.$$store.init[name],'=value;');
}else{dG.push('computed=this.',this.$$store.init[name],';');
}}else if(dI==="set"||dI==="setRuntime"||dI==="setThemed"||dI==="refresh"){dG.push('delete this.',this.$$store.useinit[name],';');

if(dI==="setRuntime"){dG.push('computed=this.',this.$$store.runtime[name],'=value;');
}else if(dI==="set"){dG.push('computed=this.',this.$$store.user[name],'=value;');
}else if(dI==="setThemed"){dG.push('computed=this.',this.$$store.theme[name],'=value;');
}else if(dI==="refresh"){dG.push('computed=this.',this.$$store.init[name],';');
}}dG.push('}');
if(dI==="set"||dI==="setRuntime"||dI==="setThemed"||dI==="init"){dG.push('else{');

if(dI==="setRuntime"){dG.push('computed=this.',this.$$store.runtime[name],'=value;');
}else if(dI==="set"){dG.push('computed=this.',this.$$store.user[name],'=value;');
}else if(dI==="setThemed"){dG.push('computed=this.',this.$$store.theme[name],'=value;');
}else if(dI==="init"){if(dJ){dG.push('computed=this.',this.$$store.init[name],'=value;');
}else{dG.push('computed=this.',this.$$store.init[name],';');
}dG.push('this.',this.$$store.useinit[name],'=true;');
}dG.push('}');
}},__I:function(dK,dL,name,dM){dK.push('if(computed===undefined||computed===inherit){');

if(dM==="refresh"){dK.push('computed=value;');
}else{dK.push('var pa=this.getLayoutParent();if(pa)computed=pa.',this.$$store.inherit[name],';');
}dK.push('if((computed===undefined||computed===inherit)&&');
dK.push('this.',this.$$store.init[name],'!==undefined&&');
dK.push('this.',this.$$store.init[name],'!==inherit){');
dK.push('computed=this.',this.$$store.init[name],';');
dK.push('this.',this.$$store.useinit[name],'=true;');
dK.push('}else{');
dK.push('delete this.',this.$$store.useinit[name],';}');
dK.push('}');
dK.push('if(old===computed)return value;');
dK.push('if(computed===inherit){');
dK.push('computed=undefined;delete this.',this.$$store.inherit[name],';');
dK.push('}');
dK.push('else if(computed===undefined)');
dK.push('delete this.',this.$$store.inherit[name],';');
dK.push('else this.',this.$$store.inherit[name],'=computed;');
dK.push('var backup=computed;');
if(dL.init!==undefined&&dM!=="init"){dK.push('if(old===undefined)old=this.',this.$$store.init[name],";");
}else{dK.push('if(old===undefined)old=null;');
}dK.push('if(computed===undefined||computed==inherit)computed=null;');
},__J:function(dN,dO,name,dP){if(dP!=="set"&&dP!=="setRuntime"&&dP!=="setThemed"){dN.push('if(computed===undefined)computed=null;');
}dN.push('if(old===computed)return value;');
if(dO.init!==undefined&&dP!=="init"){dN.push('if(old===undefined)old=this.',this.$$store.init[name],";");
}else{dN.push('if(old===undefined)old=null;');
}},__K:function(dQ,dR,name){if(dR.apply){dQ.push('this.',dR.apply,'(computed, old, "',name,'");');
}if(dR.event){dQ.push("var reg=qx.event.Registration;","if(reg.hasListener(this, '",dR.event,"')){","reg.fireEvent(this, '",dR.event,"', qx.event.type.Data, [computed, old]",")}");
}},__L:function(dS,name){dS.push('var a=this._getChildren();if(a)for(var i=0,l=a.length;i<l;i++){');
dS.push('if(a[i].',this.$$method.refresh[name],')a[i].',this.$$method.refresh[name],'(backup);');
dS.push('}');
}},defer:function(dT){var dV=navigator.userAgent.indexOf(d)!=-1;
var dU=navigator.userAgent.indexOf(S)!=-1;
if(dV||dU){dT.__x=dT.__y;
}}});
})();
(function(){var k="qx.aspects",j="Array",h=".",g="static",f="[Class ",e="]",d="constructor",c="extend",b="qx.Class";
qx.Bootstrap.define(b,{statics:{__M:qx.core.Environment.get("module.property")?qx.core.Property:null,define:function(name,m){if(!m){var m={};
}if(m.include&&!(qx.Bootstrap.getClass(m.include)===j)){m.include=[m.include];
}if(m.implement&&!(qx.Bootstrap.getClass(m.implement)===j)){m.implement=[m.implement];
}var n=false;

if(!m.hasOwnProperty(c)&&!m.type){m.type=g;
n=true;
}var o=this.__P(name,m.type,m.extend,m.statics,m.construct,m.destruct,m.include);
if(m.extend){if(m.properties){this.__R(o,m.properties,true);
}if(m.members){this.__T(o,m.members,true,true,false);
}if(m.events){this.__Q(o,m.events,true);
}if(m.include){for(var i=0,l=m.include.length;i<l;i++){this.__X(o,m.include[i],false);
}}}if(m.environment){for(var p in m.environment){qx.core.Environment.add(p,m.environment[p]);
}}if(m.implement){for(var i=0,l=m.implement.length;i<l;i++){this.__V(o,m.implement[i]);
}}if(m.defer){m.defer.self=o;
m.defer(o,o.prototype,{add:function(name,q){var r={};
r[name]=q;
qx.Class.__R(o,r,true);
}});
}return o;
},undefine:function(name){delete this.$$registry[name];
var s=name.split(h);
var u=[window];

for(var i=0;i<s.length;i++){u.push(u[i][s[i]]);
}for(var i=u.length-1;i>=1;i--){var t=u[i];
var parent=u[i-1];

if(qx.Bootstrap.isFunction(t)||qx.Bootstrap.objectGetLength(t)===0){delete parent[s[i-1]];
}else{break;
}}},isDefined:qx.Bootstrap.classIsDefined,getTotalNumber:function(){return qx.Bootstrap.objectGetLength(this.$$registry);
},getByName:qx.Bootstrap.getByName,include:function(v,w){qx.Class.__X(v,w,false);
},patch:function(x,y){qx.Class.__X(x,y,true);
},isSubClassOf:function(z,A){if(!z){return false;
}
if(z==A){return true;
}
if(z.prototype instanceof A){return true;
}return false;
},getPropertyDefinition:qx.Bootstrap.getPropertyDefinition,getProperties:function(B){var C=[];

while(B){if(B.$$properties){C.push.apply(C,qx.Bootstrap.getKeys(B.$$properties));
}B=B.superclass;
}return C;
},getByProperty:function(D,name){while(D){if(D.$$properties&&D.$$properties[name]){return D;
}D=D.superclass;
}return null;
},hasProperty:qx.Bootstrap.hasProperty,getEventType:qx.Bootstrap.getEventType,supportsEvent:qx.Bootstrap.supportsEvent,hasOwnMixin:function(E,F){return E.$$includes&&E.$$includes.indexOf(F)!==-1;
},getByMixin:function(G,H){var I,i,l;

while(G){if(G.$$includes){I=G.$$flatIncludes;

for(i=0,l=I.length;i<l;i++){if(I[i]===H){return G;
}}}G=G.superclass;
}return null;
},getMixins:qx.Bootstrap.getMixins,hasMixin:function(J,K){return !!this.getByMixin(J,K);
},hasOwnInterface:function(L,M){return L.$$implements&&L.$$implements.indexOf(M)!==-1;
},getByInterface:qx.Bootstrap.getByInterface,getInterfaces:function(N){var O=[];

while(N){if(N.$$implements){O.push.apply(O,N.$$flatImplements);
}N=N.superclass;
}return O;
},hasInterface:qx.Bootstrap.hasInterface,implementsInterface:function(P,Q){var R=P.constructor;

if(this.hasInterface(R,Q)){return true;
}
try{qx.Interface.assertObject(P,Q);
return true;
}catch(S){}
try{qx.Interface.assert(R,Q,false);
return true;
}catch(T){}return false;
},getInstance:function(){if(!this.$$instance){this.$$allowconstruct=true;
this.$$instance=new this;
delete this.$$allowconstruct;
}return this.$$instance;
},genericToString:function(){return f+this.classname+e;
},$$registry:qx.Bootstrap.$$registry,__h:null,__N:null,__i:function(){},__O:function(){},__P:function(name,U,V,W,X,Y,ba){var bd;

if(!V&&qx.core.Environment.get("qx.aspects")==false){bd=W||{};
qx.Bootstrap.setDisplayNames(bd,name);
}else{var bd={};

if(V){if(!X){X=this.__Y();
}
if(this.__bb(V,ba)){bd=this.__bc(X,name,U);
}else{bd=X;
}if(U==="singleton"){bd.getInstance=this.getInstance;
}qx.Bootstrap.setDisplayName(X,name,"constructor");
}if(W){qx.Bootstrap.setDisplayNames(W,name);
var be;

for(var i=0,a=qx.Bootstrap.getKeys(W),l=a.length;i<l;i++){be=a[i];
var bb=W[be];

if(qx.core.Environment.get("qx.aspects")){if(bb instanceof Function){bb=qx.core.Aspect.wrap(name+"."+be,bb,"static");
}bd[be]=bb;
}else{bd[be]=bb;
}}}}var bc=qx.Bootstrap.createNamespace(name,bd);
bd.name=bd.classname=name;
bd.basename=bc;
bd.$$type="Class";

if(U){bd.$$classtype=U;
}if(!bd.hasOwnProperty("toString")){bd.toString=this.genericToString;
}
if(V){qx.Bootstrap.extendClass(bd,X,V,name,bc);
if(Y){if(qx.core.Environment.get("qx.aspects")){Y=qx.core.Aspect.wrap(name,Y,"destructor");
}bd.$$destructor=Y;
qx.Bootstrap.setDisplayName(Y,name,"destruct");
}}this.$$registry[name]=bd;
return bd;
},__Q:function(bf,bg,bh){var bi,bi;

if(bf.$$events){for(var bi in bg){bf.$$events[bi]=bg[bi];
}}else{bf.$$events=bg;
}},__R:function(bj,bk,bl){if(!qx.core.Environment.get("module.property")){throw new Error("Property module disabled.");
}var bm;

if(bl===undefined){bl=false;
}var bn=bj.prototype;

for(var name in bk){bm=bk[name];
bm.name=name;
if(!bm.refine){if(bj.$$properties===undefined){bj.$$properties={};
}bj.$$properties[name]=bm;
}if(bm.init!==undefined){bj.prototype["$$init_"+name]=bm.init;
}if(bm.event!==undefined){if(!qx.core.Environment.get("module.events")){throw new Error("Events module not enabled.");
}var event={};
event[bm.event]="qx.event.type.Data";
this.__Q(bj,event,bl);
}if(bm.inheritable){this.__M.$$inheritable[name]=true;

if(!bn.$$refreshInheritables){this.__M.attachRefreshInheritables(bj);
}}
if(!bm.refine){this.__M.attachMethods(bj,name,bm);
}}},__S:null,__T:function(bo,bp,bq,br,bs){var bt=bo.prototype;
var bv,bu;
qx.Bootstrap.setDisplayNames(bp,bo.classname+".prototype");

for(var i=0,a=qx.Bootstrap.getKeys(bp),l=a.length;i<l;i++){bv=a[i];
bu=bp[bv];
if(br!==false&&bu instanceof Function&&bu.$$type==null){if(bs==true){bu=this.__U(bu,bt[bv]);
}else{if(bt[bv]){bu.base=bt[bv];
}bu.self=bo;
}
if(qx.core.Environment.get("qx.aspects")){bu=qx.core.Aspect.wrap(bo.classname+"."+bv,bu,"member");
}}bt[bv]=bu;
}},__U:function(bw,bx){if(bx){return function(){var bz=bw.base;
bw.base=bx;
var by=bw.apply(this,arguments);
bw.base=bz;
return by;
};
}else{return bw;
}},__V:function(bA,bB){var bC=qx.Interface.flatten([bB]);

if(bA.$$implements){bA.$$implements.push(bB);
bA.$$flatImplements.push.apply(bA.$$flatImplements,bC);
}else{bA.$$implements=[bB];
bA.$$flatImplements=bC;
}},__W:function(bD){var name=bD.classname;
var bE=this.__bc(bD,name,bD.$$classtype);
for(var i=0,a=qx.Bootstrap.getKeys(bD),l=a.length;i<l;i++){bF=a[i];
bE[bF]=bD[bF];
}bE.prototype=bD.prototype;
var bH=bD.prototype;

for(var i=0,a=qx.Bootstrap.getKeys(bH),l=a.length;i<l;i++){bF=a[i];
var bI=bH[bF];
if(bI&&bI.self==bD){bI.self=bE;
}}for(var bF in this.$$registry){var bG=this.$$registry[bF];

if(!bG){continue;
}
if(bG.base==bD){bG.base=bE;
}
if(bG.superclass==bD){bG.superclass=bE;
}
if(bG.$$original){if(bG.$$original.base==bD){bG.$$original.base=bE;
}
if(bG.$$original.superclass==bD){bG.$$original.superclass=bE;
}}}qx.Bootstrap.createNamespace(name,bE);
this.$$registry[name]=bE;
return bE;
},__X:function(bJ,bK,bL){if(this.hasMixin(bJ,bK)){return;
}var bO=bJ.$$original;

if(bK.$$constructor&&!bO){bJ=this.__W(bJ);
}var bN=qx.Mixin.flatten([bK]);
var bM;

for(var i=0,l=bN.length;i<l;i++){bM=bN[i];
if(bM.$$events){this.__Q(bJ,bM.$$events,bL);
}if(bM.$$properties){this.__R(bJ,bM.$$properties,bL);
}if(bM.$$members){this.__T(bJ,bM.$$members,bL,bL,bL);
}}if(bJ.$$includes){bJ.$$includes.push(bK);
bJ.$$flatIncludes.push.apply(bJ.$$flatIncludes,bN);
}else{bJ.$$includes=[bK];
bJ.$$flatIncludes=bN;
}},__Y:function(){function bP(){bP.base.apply(this,arguments);
}return bP;
},__ba:function(){return function(){};
},__bb:function(bQ,bR){if(bQ&&bQ.$$includes){var bS=bQ.$$flatIncludes;

for(var i=0,l=bS.length;i<l;i++){if(bS[i].$$constructor){return true;
}}}if(bR){var bT=qx.Mixin.flatten(bR);

for(var i=0,l=bT.length;i<l;i++){if(bT[i].$$constructor){return true;
}}}return false;
},__bc:function(bU,name,bV){var bX=function(){var cb=bX;
var ca=cb.$$original.apply(this,arguments);
if(cb.$$includes){var bY=cb.$$flatIncludes;

for(var i=0,l=bY.length;i<l;i++){if(bY[i].$$constructor){bY[i].$$constructor.apply(this,arguments);
}}}return ca;
};

if(qx.core.Environment.get(k)){var bW=qx.core.Aspect.wrap(name,bX,d);
bX.$$original=bU;
bX.constructor=bW;
bX=bW;
}bX.$$original=bU;
bU.wrapper=bX;
return bX;
}},defer:function(){if(qx.core.Environment.get(k)){for(var cc in qx.Bootstrap.$$registry){var cd=qx.Bootstrap.$$registry[cc];

for(var ce in cd){if(cd[ce] instanceof Function){cd[ce]=qx.core.Aspect.wrap(cc+h+ce,cd[ce],g);
}}}}}});
})();
(function(){var k="indexOf",j="lastIndexOf",h="slice",g="concat",f="join",e="toLocaleUpperCase",d="shift",c="substr",b="filter",a="unshift",I="match",H="quote",G="qx.lang.Generics",F="localeCompare",E="sort",D="some",C="charAt",B="split",A="substring",z="pop",t="toUpperCase",u="replace",q="push",r="charCodeAt",o="every",p="reverse",m="search",n="forEach",v="map",w="toLowerCase",y="splice",x="toLocaleLowerCase";
qx.Class.define(G,{statics:{__bd:{"Array":[f,p,E,q,z,d,a,y,g,h,k,j,n,v,b,D,o],"String":[H,A,w,t,C,r,k,j,x,e,F,I,m,u,B,c,g,h]},__be:function(J,K){return function(s){return J.prototype[K].apply(s,Array.prototype.slice.call(arguments,1));
};
},__bf:function(){var L=qx.lang.Generics.__bd;

for(var P in L){var N=window[P];
var M=L[P];

for(var i=0,l=M.length;i<l;i++){var O=M[i];

if(!N[O]){N[O]=qx.lang.Generics.__be(N,O);
}}}}},defer:function(Q){Q.__bf();
}});
})();
(function(){var a="qx.data.MBinding";
qx.Mixin.define(a,{members:{bind:function(b,c,d,e){return qx.data.SingleValueBinding.bind(this,b,c,d,e);
},removeBinding:function(f){qx.data.SingleValueBinding.removeBindingFromObject(this,f);
},removeAllBindings:function(){qx.data.SingleValueBinding.removeAllBindingsForObject(this);
},getBindings:function(){return qx.data.SingleValueBinding.getAllBindingsForObject(this);
}}});
})();
(function(){var m="get",l="",k="[",h="last",g="change",f="]",d=".",c="Number",b="String",a="set",E="deepBinding",D="item",C="reset",B="' (",A="Boolean",z=") to the object '",y="Integer",x=" of object ",w="qx.data.SingleValueBinding",v="Binding property ",t="Binding from '",u="PositiveNumber",r="PositiveInteger",s="Binding does not exist!",p=").",q="Date",n=" not possible: No event available. ";
qx.Class.define(w,{statics:{__bg:{},bind:function(F,G,H,I,J){var U=this.__bi(F,G,H,I,J);
var P=G.split(d);
var L=this.__bo(P);
var T=[];
var Q=[];
var R=[];
var N=[];
var O=F;
try{for(var i=0;i<P.length;i++){if(L[i]!==l){N.push(g);
}else{N.push(this.__bj(O,P[i]));
}T[i]=O;
if(i==P.length-1){if(L[i]!==l){var Y=L[i]===h?O.length-1:L[i];
var K=O.getItem(Y);
this.__bn(K,H,I,J,F);
R[i]=this.__bp(O,N[i],H,I,J,L[i]);
}else{if(P[i]!=null&&O[m+qx.lang.String.firstUp(P[i])]!=null){var K=O[m+qx.lang.String.firstUp(P[i])]();
this.__bn(K,H,I,J,F);
}R[i]=this.__bp(O,N[i],H,I,J);
}}else{var V={index:i,propertyNames:P,sources:T,listenerIds:R,arrayIndexValues:L,targetObject:H,targetPropertyChain:I,options:J,listeners:Q};
var S=qx.lang.Function.bind(this.__bh,this,V);
Q.push(S);
R[i]=O.addListener(N[i],S);
}if(O[m+qx.lang.String.firstUp(P[i])]==null){O=null;
}else if(L[i]!==l){O=O[m+qx.lang.String.firstUp(P[i])](L[i]);
}else{O=O[m+qx.lang.String.firstUp(P[i])]();
}
if(!O){break;
}}}catch(ba){for(var i=0;i<T.length;i++){if(T[i]&&R[i]){T[i].removeListenerById(R[i]);
}}var X=U.targets;
var M=U.listenerIds[i];
for(var i=0;i<X.length;i++){if(X[i]&&M[i]){X[i].removeListenerById(M[i]);
}}throw ba;
}var W={type:E,listenerIds:R,sources:T,targetListenerIds:U.listenerIds,targets:U.targets};
this.__bq(W,F,G,H,I);
return W;
},__bh:function(bb){if(bb.options&&bb.options.onUpdate){bb.options.onUpdate(bb.sources[bb.index],bb.targetObject);
}for(var j=bb.index+1;j<bb.propertyNames.length;j++){var bf=bb.sources[j];
bb.sources[j]=null;

if(!bf){continue;
}bf.removeListenerById(bb.listenerIds[j]);
}var bf=bb.sources[bb.index];
for(var j=bb.index+1;j<bb.propertyNames.length;j++){if(bb.arrayIndexValues[j-1]!==l){bf=bf[m+qx.lang.String.firstUp(bb.propertyNames[j-1])](bb.arrayIndexValues[j-1]);
}else{bf=bf[m+qx.lang.String.firstUp(bb.propertyNames[j-1])]();
}bb.sources[j]=bf;
if(!bf){this.__bk(bb.targetObject,bb.targetPropertyChain);
break;
}if(j==bb.propertyNames.length-1){if(qx.Class.implementsInterface(bf,qx.data.IListData)){var bg=bb.arrayIndexValues[j]===h?bf.length-1:bb.arrayIndexValues[j];
var bd=bf.getItem(bg);
this.__bn(bd,bb.targetObject,bb.targetPropertyChain,bb.options,bb.sources[bb.index]);
bb.listenerIds[j]=this.__bp(bf,g,bb.targetObject,bb.targetPropertyChain,bb.options,bb.arrayIndexValues[j]);
}else{if(bb.propertyNames[j]!=null&&bf[m+qx.lang.String.firstUp(bb.propertyNames[j])]!=null){var bd=bf[m+qx.lang.String.firstUp(bb.propertyNames[j])]();
this.__bn(bd,bb.targetObject,bb.targetPropertyChain,bb.options,bb.sources[bb.index]);
}var be=this.__bj(bf,bb.propertyNames[j]);
bb.listenerIds[j]=this.__bp(bf,be,bb.targetObject,bb.targetPropertyChain,bb.options);
}}else{if(bb.listeners[j]==null){var bc=qx.lang.Function.bind(this.__bh,this,bb);
bb.listeners.push(bc);
}if(qx.Class.implementsInterface(bf,qx.data.IListData)){var be=g;
}else{var be=this.__bj(bf,bb.propertyNames[j]);
}bb.listenerIds[j]=bf.addListener(be,bb.listeners[j]);
}}},__bi:function(bh,bi,bj,bk,bl){var bp=bk.split(d);
var bn=this.__bo(bp);
var bu=[];
var bt=[];
var br=[];
var bq=[];
var bo=bj;
for(var i=0;i<bp.length-1;i++){if(bn[i]!==l){bq.push(g);
}else{try{bq.push(this.__bj(bo,bp[i]));
}catch(e){break;
}}bu[i]=bo;
var bs=function(){for(var j=i+1;j<bp.length-1;j++){var bx=bu[j];
bu[j]=null;

if(!bx){continue;
}bx.removeListenerById(br[j]);
}var bx=bu[i];
for(var j=i+1;j<bp.length-1;j++){var bv=qx.lang.String.firstUp(bp[j-1]);
if(bn[j-1]!==l){var by=bn[j-1]===h?bx.getLength()-1:bn[j-1];
bx=bx[m+bv](by);
}else{bx=bx[m+bv]();
}bu[j]=bx;
if(bt[j]==null){bt.push(bs);
}if(qx.Class.implementsInterface(bx,qx.data.IListData)){var bw=g;
}else{try{var bw=qx.data.SingleValueBinding.__bj(bx,bp[j]);
}catch(e){break;
}}br[j]=bx.addListener(bw,bt[j]);
}qx.data.SingleValueBinding.updateTarget(bh,bi,bj,bk,bl);
};
bt.push(bs);
br[i]=bo.addListener(bq[i],bs);
var bm=qx.lang.String.firstUp(bp[i]);
if(bo[m+bm]==null){bo=null;
}else if(bn[i]!==l){bo=bo[m+bm](bn[i]);
}else{bo=bo[m+bm]();
}
if(!bo){break;
}}return {listenerIds:br,targets:bu};
},updateTarget:function(bz,bA,bB,bC,bD){var bE=this.getValueFromObject(bz,bA);
bE=qx.data.SingleValueBinding.__br(bE,bB,bC,bD,bz);
this.__bl(bB,bC,bE);
},getValueFromObject:function(o,bF){var bJ=this.__bm(o,bF);
var bH;

if(bJ!=null){var bL=bF.substring(bF.lastIndexOf(d)+1,bF.length);
if(bL.charAt(bL.length-1)==f){var bG=bL.substring(bL.lastIndexOf(k)+1,bL.length-1);
var bI=bL.substring(0,bL.lastIndexOf(k));
var bK=bJ[m+qx.lang.String.firstUp(bI)]();

if(bG==h){bG=bK.length-1;
}
if(bK!=null){bH=bK.getItem(bG);
}}else{bH=bJ[m+qx.lang.String.firstUp(bL)]();
}}return bH;
},__bj:function(bM,bN){var bO=this.__bs(bM,bN);
if(bO==null){if(qx.Class.supportsEvent(bM.constructor,bN)){bO=bN;
}else if(qx.Class.supportsEvent(bM.constructor,g+qx.lang.String.firstUp(bN))){bO=g+qx.lang.String.firstUp(bN);
}else{throw new qx.core.AssertionError(v+bN+x+bM+n);
}}return bO;
},__bk:function(bP,bQ){var bR=this.__bm(bP,bQ);

if(bR!=null){var bS=bQ.substring(bQ.lastIndexOf(d)+1,bQ.length);
if(bS.charAt(bS.length-1)==f){this.__bl(bP,bQ,null);
return;
}if(bR[C+qx.lang.String.firstUp(bS)]!=undefined){bR[C+qx.lang.String.firstUp(bS)]();
}else{bR[a+qx.lang.String.firstUp(bS)](null);
}}},__bl:function(bT,bU,bV){var ca=this.__bm(bT,bU);

if(ca!=null){var cb=bU.substring(bU.lastIndexOf(d)+1,bU.length);
if(cb.charAt(cb.length-1)==f){var bW=cb.substring(cb.lastIndexOf(k)+1,cb.length-1);
var bY=cb.substring(0,cb.lastIndexOf(k));
var bX=bT;

if(!qx.Class.implementsInterface(bX,qx.data.IListData)){bX=ca[m+qx.lang.String.firstUp(bY)]();
}
if(bW==h){bW=bX.length-1;
}
if(bX!=null){bX.setItem(bW,bV);
}}else{ca[a+qx.lang.String.firstUp(cb)](bV);
}}},__bm:function(cc,cd){var cg=cd.split(d);
var ch=cc;
for(var i=0;i<cg.length-1;i++){try{var cf=cg[i];
if(cf.indexOf(f)==cf.length-1){var ce=cf.substring(cf.indexOf(k)+1,cf.length-1);
cf=cf.substring(0,cf.indexOf(k));
}if(cf!=l){ch=ch[m+qx.lang.String.firstUp(cf)]();
}if(ce!=null){if(ce==h){ce=ch.length-1;
}ch=ch.getItem(ce);
ce=null;
}}catch(ci){return null;
}}return ch;
},__bn:function(cj,ck,cl,cm,cn){cj=this.__br(cj,ck,cl,cm,cn);
if(cj===undefined){this.__bk(ck,cl);
}if(cj!==undefined){try{this.__bl(ck,cl,cj);
if(cm&&cm.onUpdate){cm.onUpdate(cn,ck,cj);
}}catch(e){if(!(e instanceof qx.core.ValidationError)){throw e;
}
if(cm&&cm.onSetFail){cm.onSetFail(e);
}else{qx.log.Logger.warn("Failed so set value "+cj+" on "+ck+". Error message: "+e);
}}}},__bo:function(co){var cp=[];
for(var i=0;i<co.length;i++){var name=co[i];
if(qx.lang.String.endsWith(name,f)){var cq=name.substring(name.indexOf(k)+1,name.indexOf(f));
if(name.indexOf(f)!=name.length-1){throw new Error("Please use only one array at a time: "+name+" does not work.");
}
if(cq!==h){if(cq==l||isNaN(parseInt(cq,10))){throw new Error("No number or 'last' value hast been given"+" in an array binding: "+name+" does not work.");
}}if(name.indexOf(k)!=0){co[i]=name.substring(0,name.indexOf(k));
cp[i]=l;
cp[i+1]=cq;
co.splice(i+1,0,D);
i++;
}else{cp[i]=cq;
co.splice(i,1,D);
}}else{cp[i]=l;
}}return cp;
},__bp:function(cr,cs,ct,cu,cv,cw){var cx;
var cz=function(cA,e){if(cA!==l){if(cA===h){cA=cr.length-1;
}var cD=cr.getItem(cA);
if(cD===undefined){qx.data.SingleValueBinding.__bk(ct,cu);
}var cB=e.getData().start;
var cC=e.getData().end;

if(cA<cB||cA>cC){return;
}}else{var cD=e.getData();
}cD=qx.data.SingleValueBinding.__br(cD,ct,cu,cv,cr);
try{if(cD!==undefined){qx.data.SingleValueBinding.__bl(ct,cu,cD);
}else{qx.data.SingleValueBinding.__bk(ct,cu);
}if(cv&&cv.onUpdate){cv.onUpdate(cr,ct,cD);
}}catch(e){if(!(e instanceof qx.core.ValidationError)){throw e;
}
if(cv&&cv.onSetFail){cv.onSetFail(e);
}else{qx.log.Logger.warn("Failed so set value "+cD+" on "+ct+". Error message: "+e);
}}};
if(!cw){cw=l;
}cz=qx.lang.Function.bind(cz,cr,cw);
var cy=cr.addListener(cs,cz);
return cy;
},__bq:function(cE,cF,cG,cH,cI){if(this.__bg[cF.toHashCode()]===undefined){this.__bg[cF.toHashCode()]=[];
}this.__bg[cF.toHashCode()].push([cE,cF,cG,cH,cI]);
},__br:function(cJ,cK,cL,cM,cN){if(cM&&cM.converter){var cP;

if(cK.getModel){cP=cK.getModel();
}return cM.converter(cJ,cP,cN,cK);
}else{var cR=this.__bm(cK,cL);
var cS=cL.substring(cL.lastIndexOf(d)+1,cL.length);
if(cR==null){return cJ;
}var cQ=qx.Class.getPropertyDefinition(cR.constructor,cS);
var cO=cQ==null?l:cQ.check;
return this.__bt(cJ,cO);
}},__bs:function(cT,cU){var cV=qx.Class.getPropertyDefinition(cT.constructor,cU);

if(cV==null){return null;
}return cV.event;
},__bt:function(cW,cX){var cY=qx.lang.Type.getClass(cW);
if((cY==c||cY==b)&&(cX==y||cX==r)){cW=parseInt(cW,10);
}if((cY==A||cY==c||cY==q)&&cX==b){cW=cW+l;
}if((cY==c||cY==b)&&(cX==c||cX==u)){cW=parseFloat(cW);
}return cW;
},removeBindingFromObject:function(da,db){if(db.type==E){for(var i=0;i<db.sources.length;i++){if(db.sources[i]){db.sources[i].removeListenerById(db.listenerIds[i]);
}}for(var i=0;i<db.targets.length;i++){if(db.targets[i]){db.targets[i].removeListenerById(db.targetListenerIds[i]);
}}}else{da.removeListenerById(db);
}var dc=this.__bg[da.toHashCode()];
if(dc!=undefined){for(var i=0;i<dc.length;i++){if(dc[i][0]==db){qx.lang.Array.remove(dc,dc[i]);
return;
}}}throw new Error("Binding could not be found!");
},removeAllBindingsForObject:function(dd){var de=this.__bg[dd.toHashCode()];

if(de!=undefined){for(var i=de.length-1;i>=0;i--){this.removeBindingFromObject(dd,de[i][0]);
}}},getAllBindingsForObject:function(df){if(this.__bg[df.toHashCode()]===undefined){this.__bg[df.toHashCode()]=[];
}return this.__bg[df.toHashCode()];
},removeAllBindings:function(){for(var dh in this.__bg){var dg=qx.core.ObjectRegistry.fromHashCode(dh);
if(dg==null){delete this.__bg[dh];
continue;
}this.removeAllBindingsForObject(dg);
}this.__bg={};
},getAllBindings:function(){return this.__bg;
},showBindingInLog:function(di,dj){var dl;
for(var i=0;i<this.__bg[di.toHashCode()].length;i++){if(this.__bg[di.toHashCode()][i][0]==dj){dl=this.__bg[di.toHashCode()][i];
break;
}}
if(dl===undefined){var dk=s;
}else{var dk=t+dl[1]+B+dl[2]+z+dl[3]+B+dl[4]+p;
}qx.log.Logger.debug(dk);
},showAllBindingsInLog:function(){for(var dn in this.__bg){var dm=qx.core.ObjectRegistry.fromHashCode(dn);

for(var i=0;i<this.__bg[dn].length;i++){this.showBindingInLog(dm,this.__bg[dn][i][0]);
}}}}});
})();
(function(){var p="",o="g",n="]",m='\\u',l="undefined",k='\\$1',j="0041-005A0061-007A00AA00B500BA00C0-00D600D8-00F600F8-02C102C6-02D102E0-02E402EC02EE0370-037403760377037A-037D03860388-038A038C038E-03A103A3-03F503F7-0481048A-05250531-055605590561-058705D0-05EA05F0-05F20621-064A066E066F0671-06D306D506E506E606EE06EF06FA-06FC06FF07100712-072F074D-07A507B107CA-07EA07F407F507FA0800-0815081A082408280904-0939093D09500958-0961097109720979-097F0985-098C098F09900993-09A809AA-09B009B209B6-09B909BD09CE09DC09DD09DF-09E109F009F10A05-0A0A0A0F0A100A13-0A280A2A-0A300A320A330A350A360A380A390A59-0A5C0A5E0A72-0A740A85-0A8D0A8F-0A910A93-0AA80AAA-0AB00AB20AB30AB5-0AB90ABD0AD00AE00AE10B05-0B0C0B0F0B100B13-0B280B2A-0B300B320B330B35-0B390B3D0B5C0B5D0B5F-0B610B710B830B85-0B8A0B8E-0B900B92-0B950B990B9A0B9C0B9E0B9F0BA30BA40BA8-0BAA0BAE-0BB90BD00C05-0C0C0C0E-0C100C12-0C280C2A-0C330C35-0C390C3D0C580C590C600C610C85-0C8C0C8E-0C900C92-0CA80CAA-0CB30CB5-0CB90CBD0CDE0CE00CE10D05-0D0C0D0E-0D100D12-0D280D2A-0D390D3D0D600D610D7A-0D7F0D85-0D960D9A-0DB10DB3-0DBB0DBD0DC0-0DC60E01-0E300E320E330E40-0E460E810E820E840E870E880E8A0E8D0E94-0E970E99-0E9F0EA1-0EA30EA50EA70EAA0EAB0EAD-0EB00EB20EB30EBD0EC0-0EC40EC60EDC0EDD0F000F40-0F470F49-0F6C0F88-0F8B1000-102A103F1050-1055105A-105D106110651066106E-10701075-1081108E10A0-10C510D0-10FA10FC1100-1248124A-124D1250-12561258125A-125D1260-1288128A-128D1290-12B012B2-12B512B8-12BE12C012C2-12C512C8-12D612D8-13101312-13151318-135A1380-138F13A0-13F41401-166C166F-167F1681-169A16A0-16EA1700-170C170E-17111720-17311740-17511760-176C176E-17701780-17B317D717DC1820-18771880-18A818AA18B0-18F51900-191C1950-196D1970-19741980-19AB19C1-19C71A00-1A161A20-1A541AA71B05-1B331B45-1B4B1B83-1BA01BAE1BAF1C00-1C231C4D-1C4F1C5A-1C7D1CE9-1CEC1CEE-1CF11D00-1DBF1E00-1F151F18-1F1D1F20-1F451F48-1F4D1F50-1F571F591F5B1F5D1F5F-1F7D1F80-1FB41FB6-1FBC1FBE1FC2-1FC41FC6-1FCC1FD0-1FD31FD6-1FDB1FE0-1FEC1FF2-1FF41FF6-1FFC2071207F2090-209421022107210A-211321152119-211D212421262128212A-212D212F-2139213C-213F2145-2149214E218321842C00-2C2E2C30-2C5E2C60-2CE42CEB-2CEE2D00-2D252D30-2D652D6F2D80-2D962DA0-2DA62DA8-2DAE2DB0-2DB62DB8-2DBE2DC0-2DC62DC8-2DCE2DD0-2DD62DD8-2DDE2E2F300530063031-3035303B303C3041-3096309D-309F30A1-30FA30FC-30FF3105-312D3131-318E31A0-31B731F0-31FF3400-4DB54E00-9FCBA000-A48CA4D0-A4FDA500-A60CA610-A61FA62AA62BA640-A65FA662-A66EA67F-A697A6A0-A6E5A717-A71FA722-A788A78BA78CA7FB-A801A803-A805A807-A80AA80C-A822A840-A873A882-A8B3A8F2-A8F7A8FBA90A-A925A930-A946A960-A97CA984-A9B2A9CFAA00-AA28AA40-AA42AA44-AA4BAA60-AA76AA7AAA80-AAAFAAB1AAB5AAB6AAB9-AABDAAC0AAC2AADB-AADDABC0-ABE2AC00-D7A3D7B0-D7C6D7CB-D7FBF900-FA2DFA30-FA6DFA70-FAD9FB00-FB06FB13-FB17FB1DFB1F-FB28FB2A-FB36FB38-FB3CFB3EFB40FB41FB43FB44FB46-FBB1FBD3-FD3DFD50-FD8FFD92-FDC7FDF0-FDFBFE70-FE74FE76-FEFCFF21-FF3AFF41-FF5AFF66-FFBEFFC2-FFC7FFCA-FFCFFFD2-FFD7FFDA-FFDC",h='-',g="qx.lang.String",f="(^|[^",c="0",e="%",d=' ',b='\n',a="])[";
qx.Class.define(g,{statics:{__bu:j,__bv:null,__bw:{},camelCase:function(q){var r=this.__bw[q];

if(!r){r=q.replace(/\-([a-z])/g,function(s,t){return t.toUpperCase();
});
}return r;
},hyphenate:function(u){var v=this.__bw[u];

if(!v){v=u.replace(/[A-Z]/g,function(w){return (h+w.charAt(0).toLowerCase());
});
}return v;
},capitalize:function(x){if(this.__bv===null){var y=m;
this.__bv=new RegExp(f+this.__bu.replace(/[0-9A-F]{4}/g,function(z){return y+z;
})+a+this.__bu.replace(/[0-9A-F]{4}/g,function(A){return y+A;
})+n,o);
}return x.replace(this.__bv,function(B){return B.toUpperCase();
});
},clean:function(C){return this.trim(C.replace(/\s+/g,d));
},trimLeft:function(D){return D.replace(/^\s+/,p);
},trimRight:function(E){return E.replace(/\s+$/,p);
},trim:function(F){return F.replace(/^\s+|\s+$/g,p);
},startsWith:function(G,H){return G.indexOf(H)===0;
},endsWith:function(I,J){return I.substring(I.length-J.length,I.length)===J;
},repeat:function(K,L){return K.length>0?new Array(L+1).join(K):p;
},pad:function(M,length,N){var O=length-M.length;

if(O>0){if(typeof N===l){N=c;
}return this.repeat(N,O)+M;
}else{return M;
}},firstUp:qx.Bootstrap.firstUp,firstLow:qx.Bootstrap.firstLow,contains:function(P,Q){return P.indexOf(Q)!=-1;
},format:function(R,S){var T=R;
var i=S.length;

while(i--){T=T.replace(new RegExp(e+(i+1),o),S[i]+p);
}return T;
},escapeRegexpChars:function(U){return U.replace(/([.*+?^${}()|[\]\/\\])/g,k);
},toArray:function(V){return V.split(/\B|\b/g);
},stripTags:function(W){return W.replace(/<\/?[^>]+>/gi,p);
},stripScripts:function(X,Y){var bb=p;
var ba=X.replace(/<script[^>]*>([\s\S]*?)<\/script>/gi,function(){bb+=arguments[1]+b;
return p;
});

if(Y===true){qx.lang.Function.globalEval(bb);
}return ba;
}}});
})();
(function(){var g="mshtml",f="engine.name",e="[object Array]",d="qx.lang.Array",c="qx",b="number",a="string";
qx.Class.define(d,{statics:{toArray:function(h,j){return this.cast(h,Array,j);
},cast:function(k,m,n){if(k.constructor===m){return k;
}
if(qx.data&&qx.data.IListData){if(qx.Class.hasInterface(k,qx.data.IListData)){var k=k.toArray();
}}var o=new m;
if((qx.core.Environment.get(f)==g)){if(k.item){for(var i=n||0,l=k.length;i<l;i++){o.push(k[i]);
}return o;
}}if(Object.prototype.toString.call(k)===e&&n==null){o.push.apply(o,k);
}else{o.push.apply(o,Array.prototype.slice.call(k,n||0));
}return o;
},fromArguments:function(p,q){return Array.prototype.slice.call(p,q||0);
},fromCollection:function(r){if((qx.core.Environment.get(f)==g)){if(r.item){var s=[];

for(var i=0,l=r.length;i<l;i++){s[i]=r[i];
}return s;
}}return Array.prototype.slice.call(r,0);
},fromShortHand:function(t){var v=t.length;
var u=qx.lang.Array.clone(t);
switch(v){case 1:u[1]=u[2]=u[3]=u[0];
break;
case 2:u[2]=u[0];
case 3:u[3]=u[1];
}return u;
},clone:function(w){return w.concat();
},insertAt:function(x,y,i){x.splice(i,0,y);
return x;
},insertBefore:function(z,A,B){var i=z.indexOf(B);

if(i==-1){z.push(A);
}else{z.splice(i,0,A);
}return z;
},insertAfter:function(C,D,E){var i=C.indexOf(E);

if(i==-1||i==(C.length-1)){C.push(D);
}else{C.splice(i+1,0,D);
}return C;
},removeAt:function(F,i){return F.splice(i,1)[0];
},removeAll:function(G){G.length=0;
return this;
},append:function(H,I){Array.prototype.push.apply(H,I);
return H;
},exclude:function(J,K){for(var i=0,M=K.length,L;i<M;i++){L=J.indexOf(K[i]);

if(L!=-1){J.splice(L,1);
}}return J;
},remove:function(N,O){var i=N.indexOf(O);

if(i!=-1){N.splice(i,1);
return O;
}},contains:function(P,Q){return P.indexOf(Q)!==-1;
},equals:function(R,S){var length=R.length;

if(length!==S.length){return false;
}
for(var i=0;i<length;i++){if(R[i]!==S[i]){return false;
}}return true;
},sum:function(T){var U=0;

for(var i=0,l=T.length;i<l;i++){U+=T[i];
}return U;
},max:function(V){var i,X=V.length,W=V[0];

for(i=1;i<X;i++){if(V[i]>W){W=V[i];
}}return W===undefined?null:W;
},min:function(Y){var i,bb=Y.length,ba=Y[0];

for(i=1;i<bb;i++){if(Y[i]<ba){ba=Y[i];
}}return ba===undefined?null:ba;
},unique:function(bc){var bm=[],be={},bh={},bj={};
var bi,bd=0;
var bn=c+qx.lang.Date.now();
var bf=false,bl=false,bo=false;
for(var i=0,bk=bc.length;i<bk;i++){bi=bc[i];
if(bi===null){if(!bf){bf=true;
bm.push(bi);
}}else if(bi===undefined){}else if(bi===false){if(!bl){bl=true;
bm.push(bi);
}}else if(bi===true){if(!bo){bo=true;
bm.push(bi);
}}else if(typeof bi===a){if(!be[bi]){be[bi]=1;
bm.push(bi);
}}else if(typeof bi===b){if(!bh[bi]){bh[bi]=1;
bm.push(bi);
}}else{var bg=bi[bn];

if(bg==null){bg=bi[bn]=bd++;
}
if(!bj[bg]){bj[bg]=bi;
bm.push(bi);
}}}for(var bg in bj){try{delete bj[bg][bn];
}catch(bp){try{bj[bg][bn]=null;
}catch(bq){throw new Error("Cannot clean-up map entry doneObjects["+bg+"]["+bn+"]");
}}}return bm;
}}});
})();
(function(){var t=".",s="function",r="",q="gecko",p="[object Opera]",o="mshtml",n="8.0",m="AppleWebKit/",l="9.0",k="[^\\.0-9]",d="Gecko",j="webkit",g="4.0",c="1.9.0.0",b="opera",f="engine.version",e="Version/",h="5.0",a="qx.bom.client.Engine",i="engine.name";
qx.Bootstrap.define(a,{statics:{getVersion:function(){var x=window.navigator.userAgent;
var v=r;

if(qx.bom.client.Engine.__bx()){if(/Opera[\s\/]([0-9]+)\.([0-9])([0-9]*)/.test(x)){if(x.indexOf(e)!=-1){var w=x.match(/Version\/(\d+)\.(\d+)/);
v=w[1]+t+w[2].charAt(0)+t+w[2].substring(1,w[2].length);
}else{v=RegExp.$1+t+RegExp.$2;

if(RegExp.$3!=r){v+=t+RegExp.$3;
}}}}else if(qx.bom.client.Engine.__by()){if(/AppleWebKit\/([^ ]+)/.test(x)){v=RegExp.$1;
var y=RegExp(k).exec(v);

if(y){v=v.slice(0,y.index);
}}}else if(qx.bom.client.Engine.__bz()){if(/rv\:([^\);]+)(\)|;)/.test(x)){v=RegExp.$1;
}}else if(qx.bom.client.Engine.__bA()){if(/MSIE\s+([^\);]+)(\)|;)/.test(x)){v=RegExp.$1;
if(v<8&&/Trident\/([^\);]+)(\)|;)/.test(x)){if(RegExp.$1==g){v=n;
}else if(RegExp.$1==h){v=l;
}}}}else{var u=window.qxFail;

if(u&&typeof u===s){v=u().FULLVERSION;
}else{v=c;
qx.Bootstrap.warn("Unsupported client: "+x+"! Assumed gecko version 1.9.0.0 (Firefox 3.0).");
}}return v;
},getName:function(){var name;

if(qx.bom.client.Engine.__bx()){name=b;
}else if(qx.bom.client.Engine.__by()){name=j;
}else if(qx.bom.client.Engine.__bz()){name=q;
}else if(qx.bom.client.Engine.__bA()){name=o;
}else{var z=window.qxFail;

if(z&&typeof z===s){name=z().NAME;
}else{name=q;
qx.Bootstrap.warn("Unsupported client: "+window.navigator.userAgent+"! Assumed gecko version 1.9.0.0 (Firefox 3.0).");
}}return name;
},__bx:function(){return window.opera&&Object.prototype.toString.call(window.opera)==p;
},__by:function(){return window.navigator.userAgent.indexOf(m)!=-1;
},__bz:function(){return window.controllers&&window.navigator.product===d;
},__bA:function(){return window.navigator.cpuClass&&/MSIE\s+([^\);]+)(\)|;)/.test(window.navigator.userAgent);
}},defer:function(A){qx.core.Environment.add(f,A.getVersion);
qx.core.Environment.add(i,A.getName);
}});
})();
(function(){var a="qx.lang.Date";
qx.Class.define(a,{statics:{now:function(){return +new Date;
}}});
})();
(function(){var f="()",e=".",d=".prototype.",c='anonymous()',b="qx.lang.Function",a=".constructor()";
qx.Class.define(b,{statics:{getCaller:function(g){return g.caller?g.caller.callee:g.callee.caller;
},getName:function(h){if(h.displayName){return h.displayName;
}
if(h.$$original||h.wrapper||h.classname){return h.classname+a;
}
if(h.$$mixin){for(var j in h.$$mixin.$$members){if(h.$$mixin.$$members[j]==h){return h.$$mixin.name+d+j+f;
}}for(var j in h.$$mixin){if(h.$$mixin[j]==h){return h.$$mixin.name+e+j+f;
}}}
if(h.self){var k=h.self.constructor;

if(k){for(var j in k.prototype){if(k.prototype[j]==h){return k.classname+d+j+f;
}}for(var j in k){if(k[j]==h){return k.classname+e+j+f;
}}}}var i=h.toString().match(/function\s*(\w*)\s*\(.*/);

if(i&&i.length>=1&&i[1]){return i[1]+f;
}return c;
},globalEval:function(l){if(window.execScript){return window.execScript(l);
}else{return eval.call(window,l);
}},empty:function(){},returnTrue:function(){return true;
},returnFalse:function(){return false;
},returnNull:function(){return null;
},returnThis:function(){return this;
},returnZero:function(){return 0;
},create:function(m,n){if(!n){return m;
}if(!(n.self||n.args||n.delay!=null||n.periodical!=null||n.attempt)){return m;
}return function(event){var p=qx.lang.Array.fromArguments(arguments);
if(n.args){p=n.args.concat(p);
}
if(n.delay||n.periodical){var o=qx.event.GlobalError.observeMethod(function(){return m.apply(n.self||this,p);
});

if(n.delay){return window.setTimeout(o,n.delay);
}
if(n.periodical){return window.setInterval(o,n.periodical);
}}else if(n.attempt){var q=false;

try{q=m.apply(n.self||this,p);
}catch(r){}return q;
}else{return m.apply(n.self||this,p);
}};
},bind:function(s,self,t){return this.create(s,{self:self,args:arguments.length>2?qx.lang.Array.fromArguments(arguments,2):null});
},curry:function(u,v){return this.create(u,{args:arguments.length>1?qx.lang.Array.fromArguments(arguments,1):null});
},listener:function(w,self,x){if(arguments.length<3){return function(event){return w.call(self||this,event||window.event);
};
}else{var y=qx.lang.Array.fromArguments(arguments,2);
return function(event){var z=[event||window.event];
z.push.apply(z,y);
w.apply(self||this,z);
};
}},attempt:function(A,self,B){return this.create(A,{self:self,attempt:true,args:arguments.length>2?qx.lang.Array.fromArguments(arguments,2):null})();
},delay:function(C,D,self,E){return this.create(C,{delay:D,self:self,args:arguments.length>3?qx.lang.Array.fromArguments(arguments,3):null})();
},periodical:function(F,G,self,H){return this.create(F,{periodical:G,self:self,args:arguments.length>3?qx.lang.Array.fromArguments(arguments,3):null})();
}}});
})();
(function(){var b="qx.globalErrorHandling",a="qx.event.GlobalError";
qx.Bootstrap.define(a,{statics:{__bB:function(){if(qx.core&&qx.core.Environment){return qx.core.Environment.get(b);
}else{return !!qx.Bootstrap.getEnvironmentSetting(b);
}},setErrorHandler:function(c,d){this.__bC=c||null;
this.__bD=d||window;

if(this.__bB()){if(c&&window.onerror){var e=qx.Bootstrap.bind(this.__bF,this);

if(this.__bE==null){this.__bE=window.onerror;
}var self=this;
window.onerror=function(f,g,h){self.__bE(f,g,h);
e(f,g,h);
};
}
if(c&&!window.onerror){window.onerror=qx.Bootstrap.bind(this.__bF,this);
}if(this.__bC==null){if(this.__bE!=null){window.onerror=this.__bE;
this.__bE=null;
}else{window.onerror=null;
}}}},__bF:function(i,j,k){if(this.__bC){this.handleError(new qx.core.WindowError(i,j,k));
return true;
}},observeMethod:function(l){if(this.__bB()){var self=this;
return function(){if(!self.__bC){return l.apply(this,arguments);
}
try{return l.apply(this,arguments);
}catch(m){self.handleError(new qx.core.GlobalError(m,arguments));
}};
}else{return l;
}},handleError:function(n){if(this.__bC){this.__bC.call(this.__bD,n);
}}},defer:function(o){if(qx.core&&qx.core.Environment){qx.core.Environment.add(b,true);
}else{qx.Bootstrap.setEnvironmentSetting(b,true);
}o.setErrorHandler(null,null);
}});
})();
(function(){var b="",a="qx.core.WindowError";
qx.Bootstrap.define(a,{extend:Error,construct:function(c,d,e){Error.call(this,c);
this.__bG=c;
this.__bH=d||b;
this.__bI=e===undefined?-1:e;
},members:{__bG:null,__bH:null,__bI:null,toString:function(){return this.__bG;
},getUri:function(){return this.__bH;
},getLineNumber:function(){return this.__bI;
}}});
})();
(function(){var b="GlobalError: ",a="qx.core.GlobalError";
qx.Bootstrap.define(a,{extend:Error,construct:function(c,d){if(qx.Bootstrap.DEBUG){qx.core.Assert.assertNotUndefined(c);
}this.__bG=b+(c&&c.message?c.message:c);
Error.call(this,this.__bG);
this.__bJ=d;
this.__bK=c;
},members:{__bK:null,__bJ:null,__bG:null,toString:function(){return this.__bG;
},getArguments:function(){return this.__bJ;
},getSourceException:function(){return this.__bK;
}},destruct:function(){this.__bK=null;
this.__bJ=null;
this.__bG=null;
}});
})();
(function(){var f="qx.lang.Type",e="Error",d="RegExp",c="Date",b="Number",a="Boolean";
qx.Class.define(f,{statics:{getClass:qx.Bootstrap.getClass,isString:qx.Bootstrap.isString,isArray:qx.Bootstrap.isArray,isObject:qx.Bootstrap.isObject,isFunction:qx.Bootstrap.isFunction,isRegExp:function(g){return this.getClass(g)==d;
},isNumber:function(h){return (h!==null&&(this.getClass(h)==b||h instanceof Number));
},isBoolean:function(i){return (i!==null&&(this.getClass(i)==a||i instanceof Boolean));
},isDate:function(j){return (j!==null&&(this.getClass(j)==c||j instanceof Date));
},isError:function(k){return (k!==null&&(this.getClass(k)==e||k instanceof Error));
}}});
})();
(function(){var p="",o="!",n="'!",m="'",k="Expected '",j="' (rgb(",h=",",g=")), but found value '",f="Event (",d="Expected value to be the CSS color '",bz="' but found ",by="]",bx=", ",bw="The value '",bv=" != ",bu="qx.core.Object",bt="Expected value to be an array but found ",bs=") was fired.",br="Expected value to be an integer >= 0 but found ",bq="' to be not equal with '",w="' to '",x="Expected object '",u="Called assertTrue with '",v="Expected value to be a map but found ",s="The function did not raise an exception!",t="Expected value to be undefined but found ",q="Expected value to be a DOM element but found  '",r="Expected value to be a regular expression but found ",E="' to implement the interface '",F="Expected value to be null but found ",S="Invalid argument 'type'",O="Called assert with 'false'",bb="Assertion error! ",V="null",bm="' but found '",bg="' must must be a key of the map '",J="The String '",bp="Expected value to be a string but found ",bo="Expected value not to be undefined but found undefined!",bn="qx.util.ColorUtil",I=": ",L="The raised exception does not have the expected type! ",N=") not fired.",Q="qx.core.Assert",T="Expected value to be typeof object but found ",W="' (identical) but found '",bd="' must have any of the values defined in the array '",bi="Expected value to be a number but found ",y="Called assertFalse with '",z="qx.ui.core.Widget",K="Expected value to be a qooxdoo object but found ",ba="' arguments.",Y="Expected value '%1' to be in the range '%2'..'%3'!",X="Array[",bf="' does not match the regular expression '",be="' to be not identical with '",U="Expected [",bc="' arguments but found '",a="', which cannot be converted to a CSS color!",bh="qx.core.AssertionError",A="Expected value to be a boolean but found ",B="Expected value not to be null but found null!",P="))!",b="Expected value to be a qooxdoo widget but found ",c="Expected value to be typeof '",H="Expected value to be typeof function but found ",C="Expected value to be an integer but found ",D="Called fail().",G="The parameter 're' must be a string or a regular expression.",R="Expected value to be a number >= 0 but found ",bk="Expected value to be instanceof '",bj="], but found [",M="Wrong number of arguments given. Expected '",bl="object";
qx.Class.define(Q,{statics:{__bL:true,__bM:function(bA,bB){var bF=p;

for(var i=1,l=arguments.length;i<l;i++){bF=bF+this.__bN(arguments[i]);
}var bE=p;

if(bF){bE=bA+I+bF;
}else{bE=bA;
}var bD=bb+bE;

if(this.__bL){qx.Bootstrap.error(bD);
}
if(qx.Class.isDefined(bh)){var bC=new qx.core.AssertionError(bA,bF);

if(this.__bL){qx.Bootstrap.error("Stack trace: \n"+bC.getStackTrace());
}throw bC;
}else{throw new Error(bD);
}},__bN:function(bG){var bH;

if(bG===null){bH=V;
}else if(qx.lang.Type.isArray(bG)&&bG.length>10){bH=X+bG.length+by;
}else if((bG instanceof Object)&&(bG.toString==null)){bH=qx.lang.Json.stringify(bG,null,2);
}else{try{bH=bG.toString();
}catch(e){bH=p;
}}return bH;
},assert:function(bI,bJ){bI==true||this.__bM(bJ||p,O);
},fail:function(bK,bL){var bM=bL?p:D;
this.__bM(bK||p,bM);
},assertTrue:function(bN,bO){(bN===true)||this.__bM(bO||p,u,bN,m);
},assertFalse:function(bP,bQ){(bP===false)||this.__bM(bQ||p,y,bP,m);
},assertEquals:function(bR,bS,bT){bR==bS||this.__bM(bT||p,k,bR,bm,bS,n);
},assertNotEquals:function(bU,bV,bW){bU!=bV||this.__bM(bW||p,k,bU,bq,bV,n);
},assertIdentical:function(bX,bY,ca){bX===bY||this.__bM(ca||p,k,bX,W,bY,n);
},assertNotIdentical:function(cb,cc,cd){cb!==cc||this.__bM(cd||p,k,cb,be,cc,n);
},assertNotUndefined:function(ce,cf){ce!==undefined||this.__bM(cf||p,bo);
},assertUndefined:function(cg,ch){cg===undefined||this.__bM(ch||p,t,cg,o);
},assertNotNull:function(ci,cj){ci!==null||this.__bM(cj||p,B);
},assertNull:function(ck,cl){ck===null||this.__bM(cl||p,F,ck,o);
},assertJsonEquals:function(cm,cn,co){this.assertEquals(qx.lang.Json.stringify(cm),qx.lang.Json.stringify(cn),co);
},assertMatch:function(cp,cq,cr){this.assertString(cp);
this.assert(qx.lang.Type.isRegExp(cq)||qx.lang.Type.isString(cq),G);
cp.search(cq)>=0||this.__bM(cr||p,J,cp,bf,cq.toString(),n);
},assertArgumentsCount:function(cs,ct,cu,cv){var cw=cs.length;
(cw>=ct&&cw<=cu)||this.__bM(cv||p,M,ct,w,cu,bc,arguments.length,ba);
},assertEventFired:function(cx,event,cy,cz,cA){var cC=false;
var cB=function(e){if(cz){cz.call(cx,e);
}cC=true;
};
var cD;

try{cD=cx.addListener(event,cB,cx);
cy.call();
}catch(cE){throw cE;
}finally{try{cx.removeListenerById(cD);
}catch(cF){}}cC===true||this.__bM(cA||p,f,event,N);
},assertEventNotFired:function(cG,event,cH,cI){var cK=false;
var cJ=function(e){cK=true;
};
var cL=cG.addListener(event,cJ,cG);
cH.call();
cK===false||this.__bM(cI||p,f,event,bs);
cG.removeListenerById(cL);
},assertException:function(cM,cN,cO,cP){var cN=cN||Error;
var cQ;

try{this.__bL=false;
cM();
}catch(cR){cQ=cR;
}finally{this.__bL=true;
}
if(cQ==null){this.__bM(cP||p,s);
}cQ instanceof cN||this.__bM(cP||p,L,cN,bv,cQ);

if(cO){this.assertMatch(cQ.toString(),cO,cP);
}},assertInArray:function(cS,cT,cU){cT.indexOf(cS)!==-1||this.__bM(cU||p,bw,cS,bd,cT,m);
},assertArrayEquals:function(cV,cW,cX){this.assertArray(cV,cX);
this.assertArray(cW,cX);
cX=cX||U+cV.join(bx)+bj+cW.join(bx)+by;

if(cV.length!==cW.length){this.fail(cX,true);
}
for(var i=0;i<cV.length;i++){if(cV[i]!==cW[i]){this.fail(cX,true);
}}},assertKeyInMap:function(cY,da,db){da[cY]!==undefined||this.__bM(db||p,bw,cY,bg,da,m);
},assertFunction:function(dc,dd){qx.lang.Type.isFunction(dc)||this.__bM(dd||p,H,dc,o);
},assertString:function(de,df){qx.lang.Type.isString(de)||this.__bM(df||p,bp,de,o);
},assertBoolean:function(dg,dh){qx.lang.Type.isBoolean(dg)||this.__bM(dh||p,A,dg,o);
},assertNumber:function(di,dj){(qx.lang.Type.isNumber(di)&&isFinite(di))||this.__bM(dj||p,bi,di,o);
},assertPositiveNumber:function(dk,dl){(qx.lang.Type.isNumber(dk)&&isFinite(dk)&&dk>=0)||this.__bM(dl||p,R,dk,o);
},assertInteger:function(dm,dn){(qx.lang.Type.isNumber(dm)&&isFinite(dm)&&dm%1===0)||this.__bM(dn||p,C,dm,o);
},assertPositiveInteger:function(dp,dq){var dr=(qx.lang.Type.isNumber(dp)&&isFinite(dp)&&dp%1===0&&dp>=0);
dr||this.__bM(dq||p,br,dp,o);
},assertInRange:function(ds,dt,du,dv){(ds>=dt&&ds<=du)||this.__bM(dv||p,qx.lang.String.format(Y,[ds,dt,du]));
},assertObject:function(dw,dx){var dy=dw!==null&&(qx.lang.Type.isObject(dw)||typeof dw===bl);
dy||this.__bM(dx||p,T,(dw),o);
},assertArray:function(dz,dA){qx.lang.Type.isArray(dz)||this.__bM(dA||p,bt,dz,o);
},assertMap:function(dB,dC){qx.lang.Type.isObject(dB)||this.__bM(dC||p,v,dB,o);
},assertRegExp:function(dD,dE){qx.lang.Type.isRegExp(dD)||this.__bM(dE||p,r,dD,o);
},assertType:function(dF,dG,dH){this.assertString(dG,S);
typeof (dF)===dG||this.__bM(dH||p,c,dG,bz,dF,o);
},assertInstance:function(dI,dJ,dK){var dL=dJ.classname||dJ+p;
dI instanceof dJ||this.__bM(dK||p,bk,dL,bz,dI,o);
},assertInterface:function(dM,dN,dO){qx.Class.implementsInterface(dM,dN)||this.__bM(dO||p,x,dM,E,dN,n);
},assertCssColor:function(dP,dQ,dR){var dS=qx.Class.getByName(bn);

if(!dS){throw new Error("qx.util.ColorUtil not available! Your code must have a dependency on 'qx.util.ColorUtil'");
}var dU=dS.stringToRgb(dP);

try{var dT=dS.stringToRgb(dQ);
}catch(dW){this.__bM(dR||p,d,dP,j,dU.join(h),g,dQ,a);
}var dV=dU[0]==dT[0]&&dU[1]==dT[1]&&dU[2]==dT[2];
dV||this.__bM(dR||p,d,dU,j,dU.join(h),g,dQ,j,dT.join(h),P);
},assertElement:function(dX,dY){!!(dX&&dX.nodeType===1)||this.__bM(dY||p,q,dX,n);
},assertQxObject:function(ea,eb){this.__bO(ea,bu)||this.__bM(eb||p,K,ea,o);
},assertQxWidget:function(ec,ed){this.__bO(ec,z)||this.__bM(ed||p,b,ec,o);
},__bO:function(ee,ef){if(!ee){return false;
}var eg=ee.constructor;

while(eg){if(eg.classname===ef){return true;
}eg=eg.superclass;
}return false;
}}});
})();
(function(){var c="",b=": ",a="qx.type.BaseError";
qx.Class.define(a,{extend:Error,construct:function(d,e){Error.call(this,e);
this.__bP=d||c;
this.message=e||qx.type.BaseError.DEFAULTMESSAGE;
},statics:{DEFAULTMESSAGE:"error"},members:{__bP:null,message:null,getComment:function(){return this.__bP;
},toString:function(){return this.__bP+(this.message?b+this.message:c);
}}});
})();
(function(){var a="qx.core.AssertionError";
qx.Class.define(a,{extend:qx.type.BaseError,construct:function(b,c){qx.type.BaseError.call(this,b,c);
this.__bQ=qx.dev.StackTrace.getStackTrace();
},members:{__bQ:null,getStackTrace:function(){return this.__bQ;
}}});
})();
(function(){var m=":",l="engine.name",k="Error created at",j="...",h="qx.dev.StackTrace",g="",f="\n",e="?",d="/source/class/",c="anonymous",a="of linked script",b=".";
qx.Bootstrap.define(h,{statics:{getStackTrace:qx.core.Environment.select(l,{"gecko":function(){try{throw new Error();
}catch(A){var u=this.getStackTraceFromError(A);
qx.lang.Array.removeAt(u,0);
var s=this.getStackTraceFromCaller(arguments);
var q=s.length>u.length?s:u;

for(var i=0;i<Math.min(s.length,u.length);i++){var r=s[i];

if(r.indexOf(c)>=0){continue;
}var y=r.split(m);

if(y.length!=2){continue;
}var w=y[0];
var p=y[1];
var o=u[i];
var z=o.split(m);
var v=z[0];
var n=z[1];

if(qx.Class.getByName(v)){var t=v;
}else{t=w;
}var x=t+m;

if(p){x+=p+m;
}x+=n;
q[i]=x;
}return q;
}},"mshtml|webkit":function(){return this.getStackTraceFromCaller(arguments);
},"opera":function(){var B;

try{B.bar();
}catch(D){var C=this.getStackTraceFromError(D);
qx.lang.Array.removeAt(C,0);
return C;
}return [];
}}),getStackTraceFromCaller:qx.core.Environment.select(l,{"opera":function(E){return [];
},"default":function(F){var K=[];
var J=qx.lang.Function.getCaller(F);
var G={};

while(J){var H=qx.lang.Function.getName(J);
K.push(H);

try{J=J.caller;
}catch(L){break;
}
if(!J){break;
}var I=qx.core.ObjectRegistry.toHashCode(J);

if(G[I]){K.push(j);
break;
}G[I]=J;
}return K;
}}),getStackTraceFromError:qx.core.Environment.select(l,{"gecko":function(M){if(!M.stack){return [];
}var S=/@(.+):(\d+)$/gm;
var N;
var O=[];

while((N=S.exec(M.stack))!=null){var P=N[1];
var R=N[2];
var Q=this.__bR(P);
O.push(Q+m+R);
}return O;
},"webkit":function(T){if(T.stack){var bb=/at (.*)/gm;
var ba=/\((.*?)(:[^\/].*)\)/;
var X=/(.*?)(:[^\/].*)/;
var U;
var V=[];

while((U=bb.exec(T.stack))!=null){var W=ba.exec(U[1]);

if(!W){W=X.exec(U[1]);
}
if(W){var Y=this.__bR(W[1]);
V.push(Y+W[2]);
}else{V.push(U[1]);
}}return V;
}else if(T.sourceURL&&T.line){return [this.__bR(T.sourceURL)+m+T.line];
}else{return [];
}},"opera":function(bc){if(bc.stacktrace){var be=bc.stacktrace;

if(be.indexOf(k)>=0){be=be.split(k)[0];
}if(be.indexOf(a)>=0){var bo=/Line\ (\d+?)\ of\ linked\ script\ (.*?)$/gm;
var bf;
var bg=[];

while((bf=bo.exec(be))!=null){var bn=bf[1];
var bi=bf[2];
var bm=this.__bR(bi);
bg.push(bm+m+bn);
}}else{var bo=/line\ (\d+?),\ column\ (\d+?)\ in\ (?:.*?)\ in\ (.*?):[^\/]/gm;
var bf;
var bg=[];

while((bf=bo.exec(be))!=null){var bn=bf[1];
var bh=bf[2];
var bi=bf[3];
var bm=this.__bR(bi);
bg.push(bm+m+bn+m+bh);
}}return bg;
}else if(bc.message&&bc.message.indexOf("Backtrace:")>=0){var bg=[];
var bj=qx.lang.String.trim(bc.message.split("Backtrace:")[1]);
var bk=bj.split(f);

for(var i=0;i<bk.length;i++){var bd=bk[i].match(/\s*Line ([0-9]+) of.* (\S.*)/);

if(bd&&bd.length>=2){var bn=bd[1];
var bl=this.__bR(bd[2]);
bg.push(bl+m+bn);
}}return bg;
}else{return [];
}},"default":function(){return [];
}}),__bR:function(bp){var bt=d;
var bq=bp.indexOf(bt);
var bs=bp.indexOf(e);

if(bs>=0){bp=bp.substring(0,bs);
}var br=(bq==-1)?bp:bp.substring(bq+bt.length).replace(/\//g,b).replace(/\.js$/,g);
return br;
}}});
})();
(function(){var g="$$hash",f="qx.core.ObjectRegistry",e="-",d="",c="-0";
qx.Class.define(f,{statics:{inShutDown:false,__o:{},__bS:0,__bT:[],__bU:d,__bV:{},register:function(h){var m=this.__o;

if(!m){return;
}var k=h.$$hash;

if(k==null){var j=this.__bT;

if(j.length>0&&true){k=j.pop();
}else{k=(this.__bS++)+this.__bU;
}h.$$hash=k;
}m[k]=h;
},unregister:function(n){var o=n.$$hash;

if(o==null){return;
}var p=this.__o;

if(p&&p[o]){delete p[o];
this.__bT.push(o);
}try{delete n.$$hash;
}catch(q){if(n.removeAttribute){n.removeAttribute(g);
}}},toHashCode:function(r){var t=r.$$hash;

if(t!=null){return t;
}var s=this.__bT;

if(s.length>0){t=s.pop();
}else{t=(this.__bS++)+this.__bU;
}return r.$$hash=t;
},clearHashCode:function(u){var v=u.$$hash;

if(v!=null){this.__bT.push(v);
try{delete u.$$hash;
}catch(w){if(u.removeAttribute){u.removeAttribute(g);
}}}},fromHashCode:function(x){return this.__o[x]||null;
},shutdown:function(){this.inShutDown=true;
var z=this.__o;
var B=[];

for(var A in z){B.push(A);
}B.sort(function(a,b){return parseInt(b,10)-parseInt(a,10);
});
var y,i=0,l=B.length;

while(true){try{for(;i<l;i++){A=B[i];
y=z[A];

if(y&&y.dispose){y.dispose();
}}}catch(C){qx.Bootstrap.error(this,"Could not dispose object "+y.toString()+": "+C);

if(i!==l){i++;
continue;
}}break;
}qx.Bootstrap.debug(this,"Disposed "+l+" objects");
delete this.__o;
},getRegistry:function(){return this.__o;
},getNextHash:function(){return this.__bS;
},getPostId:function(){return this.__bU;
},getStackTraces:function(){return this.__bV;
}},defer:function(D){if(window&&window.top){var frames=window.top.frames;

for(var i=0;i<frames.length;i++){if(frames[i]===window){D.__bU=e+(i+1);
return;
}}}D.__bU=c;
}});
})();
(function(){var p='',o='"',m=':',l=']',h='null',g=': ',f='object',e='function',d=',',b='\n',ba='\\u',Y=',\n',X='0000',W='string',V="Cannot stringify a recursive object.",U='0',T='-',S='}',R='String',Q='Boolean',x='\\\\',y='\\f',u='\\t',w='{\n',s='[]',t="qx.lang.JsonImpl",q='Z',r='\\n',z='Object',A='{}',H='@',F='.',K='(',J='Array',M='T',L='\\r',C='{',P='JSON.parse',O=' ',N='[',B='Number',D=')',E='[\n',G='\\"',I='\\b';
qx.Class.define(t,{extend:Object,construct:function(){this.stringify=qx.lang.Function.bind(this.stringify,this);
this.parse=qx.lang.Function.bind(this.parse,this);
},members:{__bW:null,__bX:null,__bY:null,__ca:null,stringify:function(bb,bc,bd){this.__bW=p;
this.__bX=p;
this.__ca=[];

if(qx.lang.Type.isNumber(bd)){var bd=Math.min(10,Math.floor(bd));

for(var i=0;i<bd;i+=1){this.__bX+=O;
}}else if(qx.lang.Type.isString(bd)){if(bd.length>10){bd=bd.slice(0,10);
}this.__bX=bd;
}if(bc&&(qx.lang.Type.isFunction(bc)||qx.lang.Type.isArray(bc))){this.__bY=bc;
}else{this.__bY=null;
}return this.__cb(p,{'':bb});
},__cb:function(be,bf){var bi=this.__bW,bg,bj=bf[be];
if(bj&&qx.lang.Type.isFunction(bj.toJSON)){bj=bj.toJSON(be);
}else if(qx.lang.Type.isDate(bj)){bj=this.dateToJSON(bj);
}if(typeof this.__bY===e){bj=this.__bY.call(bf,be,bj);
}
if(bj===null){return h;
}
if(bj===undefined){return undefined;
}switch(qx.lang.Type.getClass(bj)){case R:return this.__cc(bj);
case B:return isFinite(bj)?String(bj):h;
case Q:return String(bj);
case J:this.__bW+=this.__bX;
bg=[];

if(this.__ca.indexOf(bj)!==-1){throw new TypeError(V);
}this.__ca.push(bj);
var length=bj.length;

for(var i=0;i<length;i+=1){bg[i]=this.__cb(i,bj)||h;
}this.__ca.pop();
if(bg.length===0){var bh=s;
}else if(this.__bW){bh=E+this.__bW+bg.join(Y+this.__bW)+b+bi+l;
}else{bh=N+bg.join(d)+l;
}this.__bW=bi;
return bh;
case z:this.__bW+=this.__bX;
bg=[];

if(this.__ca.indexOf(bj)!==-1){throw new TypeError(V);
}this.__ca.push(bj);
if(this.__bY&&typeof this.__bY===f){var length=this.__bY.length;

for(var i=0;i<length;i+=1){var k=this.__bY[i];

if(typeof k===W){var v=this.__cb(k,bj);

if(v){bg.push(this.__cc(k)+(this.__bW?g:m)+v);
}}}}else{for(var k in bj){if(Object.hasOwnProperty.call(bj,k)){var v=this.__cb(k,bj);

if(v){bg.push(this.__cc(k)+(this.__bW?g:m)+v);
}}}}this.__ca.pop();
if(bg.length===0){var bh=A;
}else if(this.__bW){bh=w+this.__bW+bg.join(Y+this.__bW)+b+bi+S;
}else{bh=C+bg.join(d)+S;
}this.__bW=bi;
return bh;
}},dateToJSON:function(bk){var bl=function(n){return n<10?U+n:n;
};
var bm=function(n){var bn=bl(n);
return n<100?U+bn:bn;
};
return isFinite(bk.valueOf())?bk.getUTCFullYear()+T+bl(bk.getUTCMonth()+1)+T+bl(bk.getUTCDate())+M+bl(bk.getUTCHours())+m+bl(bk.getUTCMinutes())+m+bl(bk.getUTCSeconds())+F+bm(bk.getUTCMilliseconds())+q:null;
},__cc:function(bo){var bp={'\b':I,'\t':u,'\n':r,'\f':y,'\r':L,'"':G,'\\':x};
var bq=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g;
bq.lastIndex=0;

if(bq.test(bo)){return o+bo.replace(bq,function(a){var c=bp[a];
return typeof c===W?c:ba+(X+a.charCodeAt(0).toString(16)).slice(-4);
})+o;
}else{return o+bo+o;
}},parse:function(br,bs){var bt=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g;
bt.lastIndex=0;
if(bt.test(br)){br=br.replace(bt,function(a){return ba+(X+a.charCodeAt(0).toString(16)).slice(-4);
});
}if(/^[\],:{}\s]*$/.test(br.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,H).replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,l).replace(/(?:^|:|,)(?:\s*\[)+/g,p))){var j=eval(K+br+D);
return typeof bs===e?this.__cd({'':j},p,bs):j;
}throw new SyntaxError(P);
},__cd:function(bu,bv,bw){var bx=bu[bv];

if(bx&&typeof bx===f){for(var k in bx){if(Object.hasOwnProperty.call(bx,k)){var v=this.__cd(bx,k,bw);

if(v!==undefined){bx[k]=v;
}else{delete bx[k];
}}}}return bw.call(bu,bv,bx);
}}});
})();
(function(){var g="repl",f="prop",e="qx.bom.client.Json",d="JSON",c='{"x":1}',b="json",a="val";
qx.Bootstrap.define(e,{statics:{getJson:function(){return (qx.Bootstrap.getClass(window.JSON)==d&&JSON.parse(c).x===1&&JSON.stringify({"prop":a},function(k,v){return k===f?g:v;
}).indexOf(g)>0);
}},defer:function(h){qx.core.Environment.add(b,h.getJson);
}});
})();
(function(){var d="set",c="reset",b="get",a="qx.core.MProperty";
qx.Mixin.define(a,{members:{set:function(e,f){var h=qx.core.Property.$$method.set;

if(qx.Bootstrap.isString(e)){if(!this[h[e]]){if(this[d+qx.Bootstrap.firstUp(e)]!=undefined){this[d+qx.Bootstrap.firstUp(e)](f);
return this;
}}return this[h[e]](f);
}else{for(var g in e){if(!this[h[g]]){if(this[d+qx.Bootstrap.firstUp(g)]!=undefined){this[d+qx.Bootstrap.firstUp(g)](e[g]);
continue;
}}this[h[g]](e[g]);
}return this;
}},get:function(i){var j=qx.core.Property.$$method.get;

if(!this[j[i]]){if(this[b+qx.Bootstrap.firstUp(i)]!=undefined){return this[b+qx.Bootstrap.firstUp(i)]();
}}return this[j[i]]();
},reset:function(k){var l=qx.core.Property.$$method.reset;

if(!this[l[k]]){if(this[c+qx.Bootstrap.firstUp(k)]!=undefined){this[c+qx.Bootstrap.firstUp(k)]();
return;
}}this[l[k]]();
}}});
})();
(function(){var a="qx.lang.RingBuffer";
qx.Class.define(a,{extend:Object,construct:function(b){this.setMaxEntries(b||50);
},members:{__ce:0,__cf:0,__cg:false,__ch:0,__ci:null,__cj:null,setMaxEntries:function(c){this.__cj=c;
this.clear();
},getMaxEntries:function(){return this.__cj;
},addEntry:function(d){this.__ci[this.__ce]=d;
this.__ce=this.__ck(this.__ce,1);
var e=this.getMaxEntries();

if(this.__cf<e){this.__cf++;
}if(this.__cg&&(this.__ch<e)){this.__ch++;
}},mark:function(){this.__cg=true;
this.__ch=0;
},clearMark:function(){this.__cg=false;
},getAllEntries:function(){return this.getEntries(this.getMaxEntries(),false);
},getEntries:function(f,g){if(f>this.__cf){f=this.__cf;
}if(g&&this.__cg&&(f>this.__ch)){f=this.__ch;
}
if(f>0){var i=this.__ck(this.__ce,-1);
var h=this.__ck(i,-f+1);
var j;

if(h<=i){j=this.__ci.slice(h,i+1);
}else{j=this.__ci.slice(h,this.__cf).concat(this.__ci.slice(0,i+1));
}}else{j=[];
}return j;
},clear:function(){this.__ci=new Array(this.getMaxEntries());
this.__cf=0;
this.__ch=0;
this.__ce=0;
},__ck:function(k,l){var m=this.getMaxEntries();
var n=(k+l)%m;
if(n<0){n+=m;
}return n;
}}});
})();
(function(){var a="qx.log.appender.RingBuffer";
qx.Class.define(a,{extend:qx.lang.RingBuffer,construct:function(b){this.setMaxMessages(b||50);
},members:{setMaxMessages:function(c){this.setMaxEntries(c);
},getMaxMessages:function(){return this.getMaxEntries();
},process:function(d){this.addEntry(d);
},getAllLogEvents:function(){return this.getAllEntries();
},retrieveLogEvents:function(e,f){return this.getEntries(e,f);
},clearHistory:function(){this.clear();
}}});
})();
(function(){var k="node",j="error",h="...(+",g="array",f=")",e="info",d="instance",c="string",b="null",a="class",H="number",G="stringify",F="]",E="date",D="unknown",C="function",B="boolean",A="debug",z="map",y="undefined",s="qx.log.Logger",t="[",q="#",r="warn",o="document",p="{...(",m="text[",n="[...(",u="\n",v=")}",x=")]",w="object";
qx.Class.define(s,{statics:{__cl:A,setLevel:function(I){this.__cl=I;
},getLevel:function(){return this.__cl;
},setTreshold:function(J){this.__co.setMaxMessages(J);
},getTreshold:function(){return this.__co.getMaxMessages();
},__cm:{},__cn:0,register:function(K){if(K.$$id){return;
}var M=this.__cn++;
this.__cm[M]=K;
K.$$id=M;
var L=this.__cp;
var N=this.__co.getAllLogEvents();

for(var i=0,l=N.length;i<l;i++){if(L[N[i].level]>=L[this.__cl]){K.process(N[i]);
}}},unregister:function(O){var P=O.$$id;

if(P==null){return;
}delete this.__cm[P];
delete O.$$id;
},debug:function(Q,R){qx.log.Logger.__cq(A,arguments);
},info:function(S,T){qx.log.Logger.__cq(e,arguments);
},warn:function(U,V){qx.log.Logger.__cq(r,arguments);
},error:function(W,X){qx.log.Logger.__cq(j,arguments);
},trace:function(Y){qx.log.Logger.__cq(e,[Y,qx.dev.StackTrace.getStackTrace().join(u)]);
},deprecatedMethodWarning:function(ba,bb){var bc;
},deprecatedClassWarning:function(bd,be){var bf;
},deprecatedEventWarning:function(bg,event,bh){var bi;
},deprecatedMixinWarning:function(bj,bk){var bl;
},deprecatedConstantWarning:function(bm,bn,bo){var self,bp;
},deprecateMethodOverriding:function(bq,br,bs,bt){var bu;
},clear:function(){this.__co.clearHistory();
},__co:new qx.log.appender.RingBuffer(50),__cp:{debug:0,info:1,warn:2,error:3},__cq:function(bv,bw){var bB=this.__cp;

if(bB[bv]<bB[this.__cl]){return;
}var by=bw.length<2?null:bw[0];
var bA=by?1:0;
var bx=[];

for(var i=bA,l=bw.length;i<l;i++){bx.push(this.__cs(bw[i],true));
}var bC=new Date;
var bD={time:bC,offset:bC-qx.Bootstrap.LOADSTART,level:bv,items:bx,win:window};
if(by){if(by.$$hash!==undefined){bD.object=by.$$hash;
}else if(by.$$type){bD.clazz=by;
}}this.__co.process(bD);
var bE=this.__cm;

for(var bz in bE){bE[bz].process(bD);
}},__cr:function(bF){if(bF===undefined){return y;
}else if(bF===null){return b;
}
if(bF.$$type){return a;
}var bG=typeof bF;

if(bG===C||bG==c||bG===H||bG===B){return bG;
}else if(bG===w){if(bF.nodeType){return k;
}else if(bF.classname){return d;
}else if(bF instanceof Array){return g;
}else if(bF instanceof Error){return j;
}else if(bF instanceof Date){return E;
}else{return z;
}}
if(bF.toString){return G;
}return D;
},__cs:function(bH,bI){var bP=this.__cr(bH);
var bL=D;
var bK=[];

switch(bP){case b:case y:bL=bP;
break;
case c:case H:case B:case E:bL=bH;
break;
case k:if(bH.nodeType===9){bL=o;
}else if(bH.nodeType===3){bL=m+bH.nodeValue+F;
}else if(bH.nodeType===1){bL=bH.nodeName.toLowerCase();

if(bH.id){bL+=q+bH.id;
}}else{bL=k;
}break;
case C:bL=qx.lang.Function.getName(bH)||bP;
break;
case d:bL=bH.basename+t+bH.$$hash+F;
break;
case a:case G:bL=bH.toString();
break;
case j:bK=qx.dev.StackTrace.getStackTraceFromError(bH);
bL=bH.toString();
break;
case g:if(bI){bL=[];

for(var i=0,l=bH.length;i<l;i++){if(bL.length>20){bL.push(h+(l-i)+f);
break;
}bL.push(this.__cs(bH[i],false));
}}else{bL=n+bH.length+x;
}break;
case z:if(bI){var bJ;
var bO=[];

for(var bN in bH){bO.push(bN);
}bO.sort();
bL=[];

for(var i=0,l=bO.length;i<l;i++){if(bL.length>20){bL.push(h+(l-i)+f);
break;
}bN=bO[i];
bJ=this.__cs(bH[bN],false);
bJ.key=bN;
bL.push(bJ);
}}else{var bM=0;

for(var bN in bH){bM++;
}bL=p+bM+v;
}break;
}return {type:bP,text:bL,trace:bK};
}},defer:function(bQ){var bR=qx.Bootstrap.$$logs;

for(var i=0;i<bR.length;i++){bQ.__cq(bR[i][0],bR[i][1]);
}qx.Bootstrap.debug=bQ.debug;
qx.Bootstrap.info=bQ.info;
qx.Bootstrap.warn=bQ.warn;
qx.Bootstrap.error=bQ.error;
qx.Bootstrap.trace=bQ.trace;
}});
})();
(function(){var e="info",d="debug",c="warn",b="qx.core.MLogging",a="error";
qx.Mixin.define(b,{members:{__ct:qx.log.Logger,debug:function(f){this.__cu(d,arguments);
},info:function(g){this.__cu(e,arguments);
},warn:function(h){this.__cu(c,arguments);
},error:function(i){this.__cu(a,arguments);
},trace:function(){this.__ct.trace(this);
},__cu:function(j,k){var l=qx.lang.Array.fromArguments(k);
l.unshift(this);
this.__ct[j].apply(this.__ct,l);
}}});
})();
(function(){var d="qx.dom.Node",c="engine.name",b="";
qx.Class.define(d,{statics:{ELEMENT:1,ATTRIBUTE:2,TEXT:3,CDATA_SECTION:4,ENTITY_REFERENCE:5,ENTITY:6,PROCESSING_INSTRUCTION:7,COMMENT:8,DOCUMENT:9,DOCUMENT_TYPE:10,DOCUMENT_FRAGMENT:11,NOTATION:12,getDocument:function(e){return e.nodeType===this.DOCUMENT?e:e.ownerDocument||e.document;
},getWindow:qx.core.Environment.select(c,{"mshtml":function(f){if(f.nodeType==null){return f;
}if(f.nodeType!==this.DOCUMENT){f=f.ownerDocument;
}return f.parentWindow;
},"default":function(g){if(g.nodeType==null){return g;
}if(g.nodeType!==this.DOCUMENT){g=g.ownerDocument;
}return g.defaultView;
}}),getDocumentElement:function(h){return this.getDocument(h).documentElement;
},getBodyElement:function(j){return this.getDocument(j).body;
},isNode:function(k){return !!(k&&k.nodeType!=null);
},isElement:function(l){return !!(l&&l.nodeType===this.ELEMENT);
},isDocument:function(m){return !!(m&&m.nodeType===this.DOCUMENT);
},isText:function(n){return !!(n&&n.nodeType===this.TEXT);
},isWindow:function(o){return !!(o&&o.history&&o.location&&o.document);
},isNodeName:function(p,q){if(!q||!p||!p.nodeName){return false;
}return q.toLowerCase()==qx.dom.Node.getName(p);
},getName:function(r){if(!r||!r.nodeName){return null;
}return r.nodeName.toLowerCase();
},getText:function(s){if(!s||!s.nodeType){return null;
}
switch(s.nodeType){case 1:var i,a=[],t=s.childNodes,length=t.length;

for(i=0;i<length;i++){a[i]=this.getText(t[i]);
}return a.join(b);
case 2:case 3:case 4:return s.nodeValue;
}return null;
},isBlockNode:function(u){if(!qx.dom.Node.isElement(u)){return false;
}u=qx.dom.Node.getName(u);
return /^(body|form|textarea|fieldset|ul|ol|dl|dt|dd|li|div|hr|p|h[1-6]|quote|pre|table|thead|tbody|tfoot|tr|td|th|iframe|address|blockquote)$/.test(u);
}}});
})();
(function(){var l="on",k="engine.name",j="gecko",i="engine.version",h="function",g="undefined",f="mousedown",d="qx.bom.Event",c="return;",b="mouseover",a="HTMLEvents";
qx.Class.define(d,{statics:{addNativeListener:function(m,n,o,p){if(m.addEventListener){m.addEventListener(n,o,!!p);
}else if(m.attachEvent){m.attachEvent(l+n,o);
}else if(typeof m[l+n]!=g){m[l+n]=o;
}else{}},removeNativeListener:function(q,r,s,t){if(q.removeEventListener){q.removeEventListener(r,s,!!t);
}else if(q.detachEvent){try{q.detachEvent(l+r,s);
}catch(e){if(e.number!==-2146828218){throw e;
}}}else if(typeof q[l+r]!=g){q[l+r]=null;
}else{}},getTarget:function(e){return e.target||e.srcElement;
},getRelatedTarget:function(e){if(e.relatedTarget!==undefined){if((qx.core.Environment.get(k)==j)){try{e.relatedTarget&&e.relatedTarget.nodeType;
}catch(e){return null;
}}return e.relatedTarget;
}else if(e.fromElement!==undefined&&e.type===b){return e.fromElement;
}else if(e.toElement!==undefined){return e.toElement;
}else{return null;
}},preventDefault:function(e){if(e.preventDefault){if((qx.core.Environment.get(k)==j)&&parseFloat(qx.core.Environment.get(i))>=1.9&&e.type==f&&e.button==2){return;
}e.preventDefault();
if((qx.core.Environment.get(k)==j)&&parseFloat(qx.core.Environment.get(i))<1.9){try{e.keyCode=0;
}catch(u){}}}else{try{e.keyCode=0;
}catch(v){}e.returnValue=false;
}},stopPropagation:function(e){if(e.stopPropagation){e.stopPropagation();
}else{e.cancelBubble=true;
}},fire:function(w,x){if(document.createEvent){var y=document.createEvent(a);
y.initEvent(x,true,true);
return !w.dispatchEvent(y);
}else{var y=document.createEventObject();
return w.fireEvent(l+x,y);
}},supportsEvent:qx.core.Environment.select(k,{"webkit":function(z,A){return z.hasOwnProperty(l+A);
},"default":function(B,C){var D=l+C;
var E=(D in B);

if(!E){E=typeof B[D]==h;

if(!E&&B.setAttribute){B.setAttribute(D,c);
E=typeof B[D]==h;
B.removeAttribute(D);
}}return E;
}})}});
})();
(function(){var r="|bubble",q="|capture",p="|",o="",n="_",m="unload",k="UNKNOWN_",j="c",h="__cA",g="__cz",c="DOM_",f="WIN_",e="QX_",b="qx.event.Manager",a="capture",d="DOCUMENT_";
qx.Class.define(b,{extend:Object,construct:function(s,t){this.__cv=s;
this.__cw=qx.core.ObjectRegistry.toHashCode(s);
this.__cx=t;
if(s.qx!==qx){var self=this;
qx.bom.Event.addNativeListener(s,m,qx.event.GlobalError.observeMethod(function(){qx.bom.Event.removeNativeListener(s,m,arguments.callee);
self.dispose();
}));
}this.__cy={};
this.__cz={};
this.__cA={};
this.__cB={};
},statics:{__cC:0,getNextUniqueId:function(){return (this.__cC++)+o;
}},members:{__cx:null,__cy:null,__cA:null,__cD:null,__cz:null,__cB:null,__cv:null,__cw:null,getWindow:function(){return this.__cv;
},getWindowId:function(){return this.__cw;
},getHandler:function(u){var v=this.__cz[u.classname];

if(v){return v;
}return this.__cz[u.classname]=new u(this);
},getDispatcher:function(w){var x=this.__cA[w.classname];

if(x){return x;
}return this.__cA[w.classname]=new w(this,this.__cx);
},getListeners:function(y,z,A){var B=y.$$hash||qx.core.ObjectRegistry.toHashCode(y);
var D=this.__cy[B];

if(!D){return null;
}var E=z+(A?q:r);
var C=D[E];
return C?C.concat():null;
},getAllListeners:function(){return this.__cy;
},serializeListeners:function(F){var M=F.$$hash||qx.core.ObjectRegistry.toHashCode(F);
var O=this.__cy[M];
var K=[];

if(O){var I,N,G,J,L;

for(var H in O){I=H.indexOf(p);
N=H.substring(0,I);
G=H.charAt(I+1)==j;
J=O[H];

for(var i=0,l=J.length;i<l;i++){L=J[i];
K.push({self:L.context,handler:L.handler,type:N,capture:G});
}}}return K;
},toggleAttachedEvents:function(P,Q){var V=P.$$hash||qx.core.ObjectRegistry.toHashCode(P);
var X=this.__cy[V];

if(X){var S,W,R,T;

for(var U in X){S=U.indexOf(p);
W=U.substring(0,S);
R=U.charCodeAt(S+1)===99;
T=X[U];

if(Q){this.__cE(P,W,R);
}else{this.__cF(P,W,R);
}}}},hasListener:function(Y,ba,bb){var bc=Y.$$hash||qx.core.ObjectRegistry.toHashCode(Y);
var be=this.__cy[bc];

if(!be){return false;
}var bf=ba+(bb?q:r);
var bd=be[bf];
return !!(bd&&bd.length>0);
},importListeners:function(bg,bh){var bn=bg.$$hash||qx.core.ObjectRegistry.toHashCode(bg);
var bo=this.__cy[bn]={};
var bk=qx.event.Manager;

for(var bi in bh){var bl=bh[bi];
var bm=bl.type+(bl.capture?q:r);
var bj=bo[bm];

if(!bj){bj=bo[bm]=[];
this.__cE(bg,bl.type,bl.capture);
}bj.push({handler:bl.listener,context:bl.self,unique:bl.unique||(bk.__cC++)+o});
}},addListener:function(bp,bq,br,self,bs){var bw;
var bx=bp.$$hash||qx.core.ObjectRegistry.toHashCode(bp);
var bz=this.__cy[bx];

if(!bz){bz=this.__cy[bx]={};
}var bv=bq+(bs?q:r);
var bu=bz[bv];

if(!bu){bu=bz[bv]=[];
}if(bu.length===0){this.__cE(bp,bq,bs);
}var by=(qx.event.Manager.__cC++)+o;
var bt={handler:br,context:self,unique:by};
bu.push(bt);
return bv+p+by;
},findHandler:function(bA,bB){var bN=false,bF=false,bO=false,bC=false;
var bL;

if(bA.nodeType===1){bN=true;
bL=c+bA.tagName.toLowerCase()+n+bB;
}else if(bA.nodeType===9){bC=true;
bL=d+bB;
}else if(bA==this.__cv){bF=true;
bL=f+bB;
}else if(bA.classname){bO=true;
bL=e+bA.classname+n+bB;
}else{bL=k+bA+n+bB;
}var bH=this.__cB;

if(bH[bL]){return bH[bL];
}var bK=this.__cx.getHandlers();
var bG=qx.event.IEventHandler;
var bI,bJ,bE,bD;

for(var i=0,l=bK.length;i<l;i++){bI=bK[i];
bE=bI.SUPPORTED_TYPES;

if(bE&&!bE[bB]){continue;
}bD=bI.TARGET_CHECK;

if(bD){var bM=false;

if(bN&&((bD&bG.TARGET_DOMNODE)!=0)){bM=true;
}else if(bF&&((bD&bG.TARGET_WINDOW)!=0)){bM=true;
}else if(bO&&((bD&bG.TARGET_OBJECT)!=0)){bM=true;
}else if(bC&&((bD&bG.TARGET_DOCUMENT)!=0)){bM=true;
}
if(!bM){continue;
}}bJ=this.getHandler(bK[i]);

if(bI.IGNORE_CAN_HANDLE||bJ.canHandleEvent(bA,bB)){bH[bL]=bJ;
return bJ;
}}return null;
},__cE:function(bP,bQ,bR){var bS=this.findHandler(bP,bQ);

if(bS){bS.registerEvent(bP,bQ,bR);
return;
}},removeListener:function(bT,bU,bV,self,bW){var cb;
var cc=bT.$$hash||qx.core.ObjectRegistry.toHashCode(bT);
var cd=this.__cy[cc];

if(!cd){return false;
}var bX=bU+(bW?q:r);
var bY=cd[bX];

if(!bY){return false;
}var ca;

for(var i=0,l=bY.length;i<l;i++){ca=bY[i];

if(ca.handler===bV&&ca.context===self){qx.lang.Array.removeAt(bY,i);

if(bY.length==0){this.__cF(bT,bU,bW);
}return true;
}}return false;
},removeListenerById:function(ce,cf){var cl;
var cj=cf.split(p);
var co=cj[0];
var cg=cj[1].charCodeAt(0)==99;
var cn=cj[2];
var cm=ce.$$hash||qx.core.ObjectRegistry.toHashCode(ce);
var cp=this.__cy[cm];

if(!cp){return false;
}var ck=co+(cg?q:r);
var ci=cp[ck];

if(!ci){return false;
}var ch;

for(var i=0,l=ci.length;i<l;i++){ch=ci[i];

if(ch.unique===cn){qx.lang.Array.removeAt(ci,i);

if(ci.length==0){this.__cF(ce,co,cg);
}return true;
}}return false;
},removeAllListeners:function(cq){var cu=cq.$$hash||qx.core.ObjectRegistry.toHashCode(cq);
var cw=this.__cy[cu];

if(!cw){return false;
}var cs,cv,cr;

for(var ct in cw){if(cw[ct].length>0){cs=ct.split(p);
cv=cs[0];
cr=cs[1]===a;
this.__cF(cq,cv,cr);
}}delete this.__cy[cu];
return true;
},deleteAllListeners:function(cx){delete this.__cy[cx];
},__cF:function(cy,cz,cA){var cB=this.findHandler(cy,cz);

if(cB){cB.unregisterEvent(cy,cz,cA);
return;
}},dispatchEvent:function(cC,event){var cH;
var cI=event.getType();

if(!event.getBubbles()&&!this.hasListener(cC,cI)){qx.event.Pool.getInstance().poolObject(event);
return true;
}
if(!event.getTarget()){event.setTarget(cC);
}var cG=this.__cx.getDispatchers();
var cF;
var cE=false;

for(var i=0,l=cG.length;i<l;i++){cF=this.getDispatcher(cG[i]);
if(cF.canDispatchEvent(cC,event,cI)){cF.dispatchEvent(cC,event,cI);
cE=true;
break;
}}
if(!cE){return true;
}var cD=event.getDefaultPrevented();
qx.event.Pool.getInstance().poolObject(event);
return !cD;
},dispose:function(){this.__cx.removeManager(this);
qx.util.DisposeUtil.disposeMap(this,g);
qx.util.DisposeUtil.disposeMap(this,h);
this.__cy=this.__cv=this.__cD=null;
this.__cx=this.__cB=null;
}}});
})();
(function(){var a="qx.event.IEventHandler";
qx.Interface.define(a,{statics:{TARGET_DOMNODE:1,TARGET_WINDOW:2,TARGET_OBJECT:4,TARGET_DOCUMENT:8},members:{canHandleEvent:function(b,c){},registerEvent:function(d,e,f){},unregisterEvent:function(g,h,i){}}});
})();
(function(){var c="qx.event.Registration";
qx.Class.define(c,{statics:{__cG:{},getManager:function(d){if(d==null){d=window;
}else if(d.nodeType){d=qx.dom.Node.getWindow(d);
}else if(!qx.dom.Node.isWindow(d)){d=window;
}var f=d.$$hash||qx.core.ObjectRegistry.toHashCode(d);
var e=this.__cG[f];

if(!e){e=new qx.event.Manager(d,this);
this.__cG[f]=e;
}return e;
},removeManager:function(g){var h=g.getWindowId();
delete this.__cG[h];
},addListener:function(i,j,k,self,l){return this.getManager(i).addListener(i,j,k,self,l);
},removeListener:function(m,n,o,self,p){return this.getManager(m).removeListener(m,n,o,self,p);
},removeListenerById:function(q,r){return this.getManager(q).removeListenerById(q,r);
},removeAllListeners:function(s){return this.getManager(s).removeAllListeners(s);
},deleteAllListeners:function(t){var u=t.$$hash;

if(u){this.getManager(t).deleteAllListeners(u);
}},hasListener:function(v,w,x){return this.getManager(v).hasListener(v,w,x);
},serializeListeners:function(y){return this.getManager(y).serializeListeners(y);
},createEvent:function(z,A,B){if(A==null){A=qx.event.type.Event;
}var C=qx.event.Pool.getInstance().getObject(A);
B?C.init.apply(C,B):C.init();
if(z){C.setType(z);
}return C;
},dispatchEvent:function(D,event){return this.getManager(D).dispatchEvent(D,event);
},fireEvent:function(E,F,G,H){var I;
var J=this.createEvent(F,G||null,H);
return this.getManager(E).dispatchEvent(E,J);
},fireNonBubblingEvent:function(K,L,M,N){var O=this.getManager(K);

if(!O.hasListener(K,L,false)){return true;
}var P=this.createEvent(L,M||null,N);
return O.dispatchEvent(K,P);
},PRIORITY_FIRST:-32000,PRIORITY_NORMAL:0,PRIORITY_LAST:32000,__cz:[],addHandler:function(Q){this.__cz.push(Q);
this.__cz.sort(function(a,b){return a.PRIORITY-b.PRIORITY;
});
},getHandlers:function(){return this.__cz;
},__cA:[],addDispatcher:function(R,S){this.__cA.push(R);
this.__cA.sort(function(a,b){return a.PRIORITY-b.PRIORITY;
});
},getDispatchers:function(){return this.__cA;
}}});
})();
(function(){var a="qx.core.MEvents";
qx.Mixin.define(a,{members:{__cH:qx.event.Registration,addListener:function(b,c,self,d){if(!this.$$disposed){return this.__cH.addListener(this,b,c,self,d);
}return null;
},addListenerOnce:function(f,g,self,h){var i=function(e){this.removeListener(f,i,this,h);
g.call(self||this,e);
};
return this.addListener(f,i,this,h);
},removeListener:function(j,k,self,l){if(!this.$$disposed){return this.__cH.removeListener(this,j,k,self,l);
}return false;
},removeListenerById:function(m){if(!this.$$disposed){return this.__cH.removeListenerById(this,m);
}return false;
},hasListener:function(n,o){return this.__cH.hasListener(this,n,o);
},dispatchEvent:function(p){if(!this.$$disposed){return this.__cH.dispatchEvent(this,p);
}return true;
},fireEvent:function(q,r,s){if(!this.$$disposed){return this.__cH.fireEvent(this,q,r,s);
}return true;
},fireNonBubblingEvent:function(t,u,v){if(!this.$$disposed){return this.__cH.fireNonBubblingEvent(this,t,u,v);
}return true;
},fireDataEvent:function(w,x,y,z){if(!this.$$disposed){if(y===undefined){y=null;
}return this.__cH.fireNonBubblingEvent(this,w,qx.event.type.Data,[x,y,!!z]);
}return true;
}}});
})();
(function(){var j="module.property",h="module.events",g="qx.core.Object",f="[",e="$$user_",d="]",c="rv:1.8.1",b="MSIE 6.0",a="Object";
qx.Class.define(g,{extend:Object,include:qx.core.Environment.filter({"module.databinding":qx.data.MBinding,"module.logger":qx.core.MLogging,"module.events":qx.core.MEvents,"module.property":qx.core.MProperty}),construct:function(){qx.core.ObjectRegistry.register(this);
},statics:{$$type:a},members:{__M:qx.core.Environment.get("module.property")?qx.core.Property:null,toHashCode:function(){return this.$$hash;
},toString:function(){return this.classname+f+this.$$hash+d;
},base:function(k,m){if(arguments.length===1){return k.callee.base.call(this);
}else{return k.callee.base.apply(this,Array.prototype.slice.call(arguments,1));
}},self:function(n){return n.callee.self;
},clone:function(){if(!qx.core.Environment.get(j)){throw new Error("Clonging only possible with properties.");
}var p=this.constructor;
var o=new p;
var r=qx.Class.getProperties(p);
var q=this.__M.$$store.user;
var s=this.__M.$$method.set;
var name;
for(var i=0,l=r.length;i<l;i++){name=r[i];

if(this.hasOwnProperty(q[name])){o[s[name]](this[q[name]]);
}}return o;
},__cI:null,setUserData:function(t,u){if(!this.__cI){this.__cI={};
}this.__cI[t]=u;
},getUserData:function(v){if(!this.__cI){return null;
}var w=this.__cI[v];
return w===undefined?null:w;
},isDisposed:function(){return this.$$disposed||false;
},dispose:function(){var B,z,y,C;
if(this.$$disposed){return;
}this.$$disposed=true;
this.$$instance=null;
this.$$allowconstruct=null;
var A=this.constructor;
var x;

while(A.superclass){if(A.$$destructor){A.$$destructor.call(this);
}if(A.$$includes){x=A.$$flatIncludes;

for(var i=0,l=x.length;i<l;i++){if(x[i].$$destructor){x[i].$$destructor.call(this);
}}}A=A.superclass;
}if(this.__cJ){this.__cJ();
}},__cJ:null,__cK:function(){var D=qx.Class.getProperties(this.constructor);

for(var i=0,l=D.length;i<l;i++){delete this[e+D[i]];
}},_disposeObjects:function(E){qx.util.DisposeUtil.disposeObjects(this,arguments);
},_disposeSingletonObjects:function(F){qx.util.DisposeUtil.disposeObjects(this,arguments,true);
},_disposeArray:function(G){qx.util.DisposeUtil.disposeArray(this,G);
},_disposeMap:function(H){qx.util.DisposeUtil.disposeMap(this,H);
}},environment:{"qx.disposerDebugLevel":0},defer:function(I,J){var L=navigator.userAgent.indexOf(b)!=-1;
var K=navigator.userAgent.indexOf(c)!=-1;
if(L||K){J.__cJ=J.__cK;
}},destruct:function(){if(qx.core.Environment.get(h)){if(!qx.core.ObjectRegistry.inShutDown){qx.event.Registration.removeAllListeners(this);
}else{qx.event.Registration.deleteAllListeners(this);
}}qx.core.ObjectRegistry.unregister(this);
this.__cI=null;
if(qx.core.Environment.get(j)){var O=this.constructor;
var S;
var T=this.__M.$$store;
var Q=T.user;
var R=T.theme;
var M=T.inherit;
var P=T.useinit;
var N=T.init;

while(O){S=O.$$properties;

if(S){for(var name in S){if(S[name].dereference){this[Q[name]]=this[R[name]]=this[M[name]]=this[P[name]]=this[N[name]]=undefined;
}}}O=O.superclass;
}}}});
})();
(function(){var a="qx.util.DisposeUtil";
qx.Class.define(a,{statics:{disposeObjects:function(b,c,d){var name;

for(var i=0,l=c.length;i<l;i++){name=c[i];

if(b[name]==null||!b.hasOwnProperty(name)){continue;
}
if(!qx.core.ObjectRegistry.inShutDown){if(b[name].dispose){if(!d&&b[name].constructor.$$instance){throw new Error("The object stored in key "+name+" is a singleton! Please use disposeSingleton instead.");
}else{b[name].dispose();
}}else{throw new Error("Has no disposable object under key: "+name+"!");
}}b[name]=null;
}},disposeArray:function(e,f){var h=e[f];

if(!h){return;
}if(qx.core.ObjectRegistry.inShutDown){e[f]=null;
return;
}try{var g;

for(var i=h.length-1;i>=0;i--){g=h[i];

if(g){g.dispose();
}}}catch(j){throw new Error("The array field: "+f+" of object: "+e+" has non disposable entries: "+j);
}h.length=0;
e[f]=null;
},disposeMap:function(k,m){var o=k[m];

if(!o){return;
}if(qx.core.ObjectRegistry.inShutDown){k[m]=null;
return;
}try{var n;

for(var p in o){n=o[p];

if(o.hasOwnProperty(p)&&n){n.dispose();
}}}catch(q){throw new Error("The map field: "+m+" of object: "+k+" has non disposable entries: "+q);
}k[m]=null;
},disposeTriggeredBy:function(r,s){var t=s.dispose;
s.dispose=function(){t.call(s);
r.dispose();
};
}}});
})();
(function(){var a="qx.event.IEventDispatcher";
qx.Interface.define(a,{members:{canDispatchEvent:function(b,event,c){this.assertInstance(event,qx.event.type.Event);
this.assertString(c);
},dispatchEvent:function(d,event,e){this.assertInstance(event,qx.event.type.Event);
this.assertString(e);
}}});
})();
(function(){var a="qx.event.type.Event";
qx.Class.define(a,{extend:qx.core.Object,statics:{CAPTURING_PHASE:1,AT_TARGET:2,BUBBLING_PHASE:3},members:{init:function(b,c){this._type=null;
this._target=null;
this._currentTarget=null;
this._relatedTarget=null;
this._originalTarget=null;
this._stopPropagation=false;
this._preventDefault=false;
this._bubbles=!!b;
this._cancelable=!!c;
this._timeStamp=(new Date()).getTime();
this._eventPhase=null;
return this;
},clone:function(d){if(d){var e=d;
}else{var e=qx.event.Pool.getInstance().getObject(this.constructor);
}e._type=this._type;
e._target=this._target;
e._currentTarget=this._currentTarget;
e._relatedTarget=this._relatedTarget;
e._originalTarget=this._originalTarget;
e._stopPropagation=this._stopPropagation;
e._bubbles=this._bubbles;
e._preventDefault=this._preventDefault;
e._cancelable=this._cancelable;
return e;
},stop:function(){if(this._bubbles){this.stopPropagation();
}
if(this._cancelable){this.preventDefault();
}},stopPropagation:function(){this._stopPropagation=true;
},getPropagationStopped:function(){return !!this._stopPropagation;
},preventDefault:function(){this._preventDefault=true;
},getDefaultPrevented:function(){return !!this._preventDefault;
},getType:function(){return this._type;
},setType:function(f){this._type=f;
},getEventPhase:function(){return this._eventPhase;
},setEventPhase:function(g){this._eventPhase=g;
},getTimeStamp:function(){return this._timeStamp;
},getTarget:function(){return this._target;
},setTarget:function(h){this._target=h;
},getCurrentTarget:function(){return this._currentTarget||this._target;
},setCurrentTarget:function(i){this._currentTarget=i;
},getRelatedTarget:function(){return this._relatedTarget;
},setRelatedTarget:function(j){this._relatedTarget=j;
},getOriginalTarget:function(){return this._originalTarget;
},setOriginalTarget:function(k){this._originalTarget=k;
},getBubbles:function(){return this._bubbles;
},setBubbles:function(l){this._bubbles=l;
},isCancelable:function(){return this._cancelable;
},setCancelable:function(m){this._cancelable=m;
}},destruct:function(){this._target=this._currentTarget=this._relatedTarget=this._originalTarget=null;
}});
})();
(function(){var b="qx.util.ObjectPool",a="Integer";
qx.Class.define(b,{extend:qx.core.Object,construct:function(c){qx.core.Object.call(this);
this.__cL={};

if(c!=null){this.setSize(c);
}},properties:{size:{check:a,init:Infinity}},members:{__cL:null,getObject:function(d){if(this.$$disposed){return new d;
}
if(!d){throw new Error("Class needs to be defined!");
}var e=null;
var f=this.__cL[d.classname];

if(f){e=f.pop();
}
if(e){e.$$pooled=false;
}else{e=new d;
}return e;
},poolObject:function(g){if(!this.__cL){return;
}var h=g.classname;
var j=this.__cL[h];

if(g.$$pooled){throw new Error("Object is already pooled: "+g);
}
if(!j){this.__cL[h]=j=[];
}if(j.length>this.getSize()){if(g.destroy){g.destroy();
}else{g.dispose();
}return;
}g.$$pooled=true;
j.push(g);
}},destruct:function(){var n=this.__cL;
var k,m,i,l;

for(k in n){m=n[k];

for(i=0,l=m.length;i<l;i++){m[i].dispose();
}}delete this.__cL;
}});
})();
(function(){var b="singleton",a="qx.event.Pool";
qx.Class.define(a,{extend:qx.util.ObjectPool,type:b,construct:function(){qx.util.ObjectPool.call(this,30);
}});
})();
(function(){var a="qx.event.dispatch.Direct";
qx.Class.define(a,{extend:qx.core.Object,implement:qx.event.IEventDispatcher,construct:function(b){this._manager=b;
},statics:{PRIORITY:qx.event.Registration.PRIORITY_LAST},members:{canDispatchEvent:function(c,event,d){return !event.getBubbles();
},dispatchEvent:function(e,event,f){var j,g;
event.setEventPhase(qx.event.type.Event.AT_TARGET);
var k=this._manager.getListeners(e,f,false);

if(k){for(var i=0,l=k.length;i<l;i++){var h=k[i].context||e;
k[i].handler.call(h,event);
}}}},defer:function(m){qx.event.Registration.addDispatcher(m);
}});
})();
(function(){var a="qx.lang.Json";
qx.Class.define(a,{statics:{JSON:qx.core.Environment.get("json")?window.JSON:new qx.lang.JsonImpl(),stringify:null,parse:null},defer:function(b){b.stringify=b.JSON.stringify;
b.parse=b.JSON.parse;
}});
})();
(function(){var a="qx.event.handler.Object";
qx.Class.define(a,{extend:qx.core.Object,implement:qx.event.IEventHandler,statics:{PRIORITY:qx.event.Registration.PRIORITY_LAST,SUPPORTED_TYPES:null,TARGET_CHECK:qx.event.IEventHandler.TARGET_OBJECT,IGNORE_CAN_HANDLE:false},members:{canHandleEvent:function(b,c){return qx.Class.supportsEvent(b.constructor,c);
},registerEvent:function(d,e,f){},unregisterEvent:function(g,h,i){}},defer:function(j){qx.event.Registration.addHandler(j);
}});
})();
(function(){var a="qx.event.type.Data";
qx.Class.define(a,{extend:qx.event.type.Event,members:{__cM:null,__cN:null,init:function(b,c,d){qx.event.type.Event.prototype.init.call(this,false,d);
this.__cM=b;
this.__cN=c;
return this;
},clone:function(e){var f=qx.event.type.Event.prototype.clone.call(this,e);
f.__cM=this.__cM;
f.__cN=this.__cN;
return f;
},getData:function(){return this.__cM;
},getOldData:function(){return this.__cN;
}},destruct:function(){this.__cM=this.__cN=null;
}});
})();
(function(){var c="qx.event.type.Data",b="qx.event.type.Event",a="qx.data.IListData";
qx.Interface.define(a,{events:{"change":c,"changeLength":b},members:{getItem:function(d){},setItem:function(e,f){},splice:function(g,h,i){},contains:function(j){},getLength:function(){},toArray:function(){}}});
})();
(function(){var a="qx.core.ValidationError";
qx.Class.define(a,{extend:qx.type.BaseError});
})();
(function(){var a="qx.application.IApplication";
qx.Interface.define(a,{members:{main:function(){},finalize:function(){},close:function(){},terminate:function(){}}});
})();
(function(){var a="qx.locale.MTranslation";
qx.Mixin.define(a,{members:{tr:function(b,c){var d=qx.locale.Manager;

if(d){return d.tr.apply(d,arguments);
}throw new Error("To enable localization please include qx.locale.Manager into your build!");
},trn:function(e,f,g,h){var i=qx.locale.Manager;

if(i){return i.trn.apply(i,arguments);
}throw new Error("To enable localization please include qx.locale.Manager into your build!");
},trc:function(j,k,l){var m=qx.locale.Manager;

if(m){return m.trc.apply(m,arguments);
}throw new Error("To enable localization please include qx.locale.Manager into your build!");
},marktr:function(n){var o=qx.locale.Manager;

if(o){return o.marktr.apply(o,arguments);
}throw new Error("To enable localization please include qx.locale.Manager into your build!");
}}});
})();
(function(){var g="",f="qx.core.BaseInit",d="engine.name",c="os.name",b="engine.version",a="track.Application";
qx.Class.define(f,{statics:{getApplication:function(){return this.__cO||null;
},ready:function(){if(this.__cO){return;
}
if(qx.core.Environment.get(d)==g){qx.log.Logger.warn("Could not detect engine!");
}
if(qx.core.Environment.get(b)==g){qx.log.Logger.warn("Could not detect the version of the engine!");
}
if(qx.core.Environment.get(c)==g){qx.log.Logger.warn("Could not detect operating system!");
}qx.log.Logger.debug(this,"Load runtime: "+(new Date-qx.Bootstrap.LOADSTART)+"ms");
var i=a;
var j=qx.Class.getByName(i);

if(j){this.__cO=new j;
var h=new Date;
this.__cO.main();
qx.log.Logger.debug(this,"Main runtime: "+(new Date-h)+"ms");
var h=new Date;
this.__cO.finalize();
qx.log.Logger.debug(this,"Finalize runtime: "+(new Date-h)+"ms");
}else{qx.log.Logger.warn("Missing application class: "+i);
}},__cP:function(e){var k=this.__cO;

if(k){k.close();
}},__cQ:function(){var l=this.__cO;

if(l){l.terminate();
}qx.core.ObjectRegistry.shutdown();
}}});
})();
(function(){var j="",i="10.1",h="10.3",g="10.7",f="10.5",e="95",d="10.2",c="98",b="2000",a="10.6",bd="10.0",bc="10.4",bb="rim_tabletos",ba="Darwin",Y="os.version",X="2003",W=")",V="iPhone",U="android",T="unix",q="ce",r="7",o="SymbianOS",p="os.name",m="|",n="MacPPC",k="iPod",l="\.",u="Win64",v="linux",D="me",B="Macintosh",K="Android",F="Windows",P="ios",N="vista",x="blackberry",S="(",R="win",Q="Linux",w="BSD",z="iPad",A="X11",C="xp",E="symbian",G="qx.bom.client.OperatingSystem",L="g",O="Win32",s="osx",t="webOS",y="RIM Tablet OS",J="BlackBerry",I="nt4",H="MacIntel",M="webos";
qx.Bootstrap.define(G,{statics:{getName:function(){if(!navigator){return j;
}var be=navigator.platform||j;
var bf=navigator.userAgent||j;

if(be.indexOf(F)!=-1||be.indexOf(O)!=-1||be.indexOf(u)!=-1){return R;
}else if(be.indexOf(B)!=-1||be.indexOf(n)!=-1||be.indexOf(H)!=-1){return s;
}else if(bf.indexOf(y)!=-1){return bb;
}else if(bf.indexOf(t)!=-1){return M;
}else if(be.indexOf(k)!=-1||be.indexOf(V)!=-1||be.indexOf(z)!=-1){return P;
}else if(be.indexOf(Q)!=-1){return v;
}else if(be.indexOf(A)!=-1||be.indexOf(w)!=-1||be.indexOf(ba)!=-1){return T;
}else if(be.indexOf(K)!=-1){return U;
}else if(be.indexOf(o)!=-1){return E;
}else if(be.indexOf(J)!=-1){return x;
}return j;
},__cR:{"Windows NT 6.1":r,"Windows NT 6.0":N,"Windows NT 5.2":X,"Windows NT 5.1":C,"Windows NT 5.0":b,"Windows 2000":b,"Windows NT 4.0":I,"Win 9x 4.90":D,"Windows CE":q,"Windows 98":c,"Win98":c,"Windows 95":e,"Win95":e,"Mac OS X 10_7":g,"Mac OS X 10.7":g,"Mac OS X 10_6":a,"Mac OS X 10.6":a,"Mac OS X 10_5":f,"Mac OS X 10.5":f,"Mac OS X 10_4":bc,"Mac OS X 10.4":bc,"Mac OS X 10_3":h,"Mac OS X 10.3":h,"Mac OS X 10_2":d,"Mac OS X 10.2":d,"Mac OS X 10_1":i,"Mac OS X 10.1":i,"Mac OS X 10_0":bd,"Mac OS X 10.0":bd},getVersion:function(){var bi=[];

for(var bh in qx.bom.client.OperatingSystem.__cR){bi.push(bh);
}var bj=new RegExp(S+bi.join(m).replace(/\./g,l)+W,L);
var bg=bj.exec(navigator.userAgent);

if(bg&&bg[1]){return qx.bom.client.OperatingSystem.__cR[bg[1]];
}return j;
}},defer:function(bk){qx.core.Environment.add(p,bk.getName);
qx.core.Environment.add(Y,bk.getVersion);
}});
})();
(function(){var a="qx.event.type.Native";
qx.Class.define(a,{extend:qx.event.type.Event,members:{init:function(b,c,d,e,f){qx.event.type.Event.prototype.init.call(this,e,f);
this._target=c||qx.bom.Event.getTarget(b);
this._relatedTarget=d||qx.bom.Event.getRelatedTarget(b);

if(b.timeStamp){this._timeStamp=b.timeStamp;
}this._native=b;
this._returnValue=null;
return this;
},clone:function(g){var h=qx.event.type.Event.prototype.clone.call(this,g);
var i={};
h._native=this._cloneNativeEvent(this._native,i);
h._returnValue=this._returnValue;
return h;
},_cloneNativeEvent:function(j,k){k.preventDefault=qx.lang.Function.empty;
return k;
},preventDefault:function(){qx.event.type.Event.prototype.preventDefault.call(this);
qx.bom.Event.preventDefault(this._native);
},getNativeEvent:function(){return this._native;
},setReturnValue:function(l){this._returnValue=l;
},getReturnValue:function(){return this._returnValue;
}},destruct:function(){this._native=this._returnValue=null;
}});
})();
(function(){var a="qx.event.handler.Window";
qx.Class.define(a,{extend:qx.core.Object,implement:qx.event.IEventHandler,construct:function(b){qx.core.Object.call(this);
this._manager=b;
this._window=b.getWindow();
this._initWindowObserver();
},statics:{PRIORITY:qx.event.Registration.PRIORITY_NORMAL,SUPPORTED_TYPES:{error:1,load:1,beforeunload:1,unload:1,resize:1,scroll:1,beforeshutdown:1},TARGET_CHECK:qx.event.IEventHandler.TARGET_WINDOW,IGNORE_CAN_HANDLE:true},members:{canHandleEvent:function(c,d){},registerEvent:function(f,g,h){},unregisterEvent:function(i,j,k){},_initWindowObserver:function(){this._onNativeWrapper=qx.lang.Function.listener(this._onNative,this);
var m=qx.event.handler.Window.SUPPORTED_TYPES;

for(var l in m){qx.bom.Event.addNativeListener(this._window,l,this._onNativeWrapper);
}},_stopWindowObserver:function(){var o=qx.event.handler.Window.SUPPORTED_TYPES;

for(var n in o){qx.bom.Event.removeNativeListener(this._window,n,this._onNativeWrapper);
}},_onNative:qx.event.GlobalError.observeMethod(function(e){if(this.isDisposed()){return;
}var q=this._window;

try{var t=q.document;
}catch(e){return ;
}var r=t.documentElement;
var p=qx.bom.Event.getTarget(e);

if(p==null||p===q||p===t||p===r){var event=qx.event.Registration.createEvent(e.type,qx.event.type.Native,[e,q]);
qx.event.Registration.dispatchEvent(q,event);
var s=event.getReturnValue();

if(s!=null){e.returnValue=s;
return s;
}}})},destruct:function(){this._stopWindowObserver();
this._manager=this._window=null;
},defer:function(u){qx.event.Registration.addHandler(u);
}});
})();
(function(){var n="engine.name",m="ready",l="mshtml",k="load",j="unload",i="qx.event.handler.Application",h="complete",g="webkit",f="gecko",d="opera",a="left",c="DOMContentLoaded",b="shutdown";
qx.Class.define(i,{extend:qx.core.Object,implement:qx.event.IEventHandler,construct:function(o){qx.core.Object.call(this);
this._window=o.getWindow();
this.__cS=false;
this.__cT=false;
this.__cU=false;
this.__cV=false;
this._initObserver();
qx.event.handler.Application.$$instance=this;
},statics:{PRIORITY:qx.event.Registration.PRIORITY_NORMAL,SUPPORTED_TYPES:{ready:1,shutdown:1},TARGET_CHECK:qx.event.IEventHandler.TARGET_WINDOW,IGNORE_CAN_HANDLE:true,onScriptLoaded:function(){var p=qx.event.handler.Application.$$instance;

if(p){p.__cW();
}}},members:{canHandleEvent:function(q,r){},registerEvent:function(s,t,u){},unregisterEvent:function(v,w,x){},__cU:null,__cS:null,__cT:null,__cV:null,__cW:function(){if(!this.__cU&&this.__cS&&qx.$$loader.scriptLoaded){if((qx.core.Environment.get(n)==l)){if(qx.event.Registration.hasListener(this._window,m)){this.__cU=true;
qx.event.Registration.fireEvent(this._window,m);
}}else{this.__cU=true;
qx.event.Registration.fireEvent(this._window,m);
}}},isApplicationReady:function(){return this.__cU;
},_initObserver:function(){if(qx.$$domReady||document.readyState==h||document.readyState==m){this.__cS=true;
this.__cW();
}else{this._onNativeLoadWrapped=qx.lang.Function.bind(this._onNativeLoad,this);

if(qx.core.Environment.get(n)==f||qx.core.Environment.get(n)==d||qx.core.Environment.get(n)==g){qx.bom.Event.addNativeListener(this._window,c,this._onNativeLoadWrapped);
}else if((qx.core.Environment.get(n)==l)){var self=this;
var y=function(){try{document.documentElement.doScroll(a);

if(document.body){self._onNativeLoadWrapped();
}}catch(z){window.setTimeout(y,100);
}};
y();
}qx.bom.Event.addNativeListener(this._window,k,this._onNativeLoadWrapped);
}this._onNativeUnloadWrapped=qx.lang.Function.bind(this._onNativeUnload,this);
qx.bom.Event.addNativeListener(this._window,j,this._onNativeUnloadWrapped);
},_stopObserver:function(){if(this._onNativeLoadWrapped){qx.bom.Event.removeNativeListener(this._window,k,this._onNativeLoadWrapped);
}qx.bom.Event.removeNativeListener(this._window,j,this._onNativeUnloadWrapped);
this._onNativeLoadWrapped=null;
this._onNativeUnloadWrapped=null;
},_onNativeLoad:qx.event.GlobalError.observeMethod(function(){this.__cS=true;
this.__cW();
}),_onNativeUnload:qx.event.GlobalError.observeMethod(function(){if(!this.__cV){this.__cV=true;

try{qx.event.Registration.fireEvent(this._window,b);
}catch(e){throw e;
}finally{qx.core.ObjectRegistry.shutdown();
}}})},destruct:function(){this._stopObserver();
this._window=null;
},defer:function(A){qx.event.Registration.addHandler(A);
}});
})();
(function(){var d="ready",c="shutdown",b="beforeunload",a="qx.core.Init";
qx.Class.define(a,{statics:{getApplication:qx.core.BaseInit.getApplication,ready:qx.core.BaseInit.ready,__cP:function(e){var f=this.getApplication();

if(f){e.setReturnValue(f.close());
}},__cQ:function(){var g=this.getApplication();

if(g){g.terminate();
}}},defer:function(h){qx.event.Registration.addListener(window,d,h.ready,h);
qx.event.Registration.addListener(window,c,h.__cQ,h);
qx.event.Registration.addListener(window,b,h.__cP,h);
}});
})();
(function(){var b="abstract",a="qx.application.AbstractGui";
qx.Class.define(a,{type:b,extend:qx.core.Object,implement:[qx.application.IApplication],include:qx.locale.MTranslation,members:{__cX:null,_createRootWidget:function(){throw new Error("Abstract method call");
},getRoot:function(){return this.__cX;
},main:function(){qx.theme.manager.Meta.getInstance().initialize();
qx.ui.tooltip.Manager.getInstance();
this.__cX=this._createRootWidget();
},finalize:function(){this.render();
},render:function(){qx.ui.core.queue.Manager.flush();
},close:function(c){},terminate:function(){}},destruct:function(){this.__cX=null;
}});
})();
(function(){var f="_applyTheme",e="qx.theme",d="qx.theme.manager.Meta",c="qx.theme.Modern",b="Theme",a="singleton";
qx.Class.define(d,{type:a,extend:qx.core.Object,properties:{theme:{check:b,nullable:true,apply:f}},members:{_applyTheme:function(g,h){var k=null;
var n=null;
var q=null;
var r=null;
var m=null;

if(g){k=g.meta.color||null;
n=g.meta.decoration||null;
q=g.meta.font||null;
r=g.meta.icon||null;
m=g.meta.appearance||null;
}var o=qx.theme.manager.Color.getInstance();
var p=qx.theme.manager.Decoration.getInstance();
var i=qx.theme.manager.Font.getInstance();
var l=qx.theme.manager.Icon.getInstance();
var j=qx.theme.manager.Appearance.getInstance();
o.setTheme(k);
p.setTheme(n);
i.setTheme(q);
l.setTheme(r);
j.setTheme(m);
},initialize:function(){var u=qx.core.Environment;
var s,t;
s=u.get(e);

if(s){t=qx.Theme.getByName(s);

if(!t){throw new Error("The theme to use is not available: "+s);
}this.setTheme(t);
}}},environment:{"qx.theme":c}});
})();
(function(){var b="qx.util.ValueManager",a="abstract";
qx.Class.define(b,{type:a,extend:qx.core.Object,construct:function(){qx.core.Object.call(this);
this._dynamic={};
},members:{_dynamic:null,resolveDynamic:function(c){return this._dynamic[c];
},isDynamic:function(d){return !!this._dynamic[d];
},resolve:function(e){if(e&&this._dynamic[e]){return this._dynamic[e];
}return e;
},_setDynamic:function(f){this._dynamic=f;
},_getDynamic:function(){return this._dynamic;
}},destruct:function(){this._dynamic=null;
}});
})();
(function(){var f="_applyTheme",e="qx.theme.manager.Color",d="Theme",c="changeTheme",b="string",a="singleton";
qx.Class.define(e,{type:a,extend:qx.util.ValueManager,properties:{theme:{check:d,nullable:true,apply:f,event:c}},members:{_applyTheme:function(g){var h={};

if(g){var i=g.colors;
var j=qx.util.ColorUtil;
var k;

for(var l in i){k=i[l];

if(typeof k===b){if(!j.isCssString(k)){throw new Error("Could not parse color: "+k);
}}else if(k instanceof Array){k=j.rgbToRgbString(k);
}else{throw new Error("Could not parse color: "+k);
}h[l]=k;
}}this._setDynamic(h);
},resolve:function(m){var p=this._dynamic;
var n=p[m];

if(n){return n;
}var o=this.getTheme();

if(o!==null&&o.colors[m]){return p[m]=o.colors[m];
}return m;
},isDynamic:function(q){var s=this._dynamic;

if(q&&(s[q]!==undefined)){return true;
}var r=this.getTheme();

if(r!==null&&q&&(r.colors[q]!==undefined)){s[q]=r.colors[q];
return true;
}return false;
}}});
})();
(function(){var h=",",e="rgb(",d=")",c="qx.theme.manager.Color",a="qx.util.ColorUtil";
qx.Class.define(a,{statics:{REGEXP:{hex3:/^#([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,rgb:/^rgb\(\s*([0-9]{1,3}\.{0,1}[0-9]*)\s*,\s*([0-9]{1,3}\.{0,1}[0-9]*)\s*,\s*([0-9]{1,3}\.{0,1}[0-9]*)\s*\)$/,rgba:/^rgba\(\s*([0-9]{1,3}\.{0,1}[0-9]*)\s*,\s*([0-9]{1,3}\.{0,1}[0-9]*)\s*,\s*([0-9]{1,3}\.{0,1}[0-9]*)\s*,\s*([0-9]{1,3}\.{0,1}[0-9]*)\s*\)$/},SYSTEM:{activeborder:true,activecaption:true,appworkspace:true,background:true,buttonface:true,buttonhighlight:true,buttonshadow:true,buttontext:true,captiontext:true,graytext:true,highlight:true,highlighttext:true,inactiveborder:true,inactivecaption:true,inactivecaptiontext:true,infobackground:true,infotext:true,menu:true,menutext:true,scrollbar:true,threeddarkshadow:true,threedface:true,threedhighlight:true,threedlightshadow:true,threedshadow:true,window:true,windowframe:true,windowtext:true},NAMED:{black:[0,0,0],silver:[192,192,192],gray:[128,128,128],white:[255,255,255],maroon:[128,0,0],red:[255,0,0],purple:[128,0,128],fuchsia:[255,0,255],green:[0,128,0],lime:[0,255,0],olive:[128,128,0],yellow:[255,255,0],navy:[0,0,128],blue:[0,0,255],teal:[0,128,128],aqua:[0,255,255],transparent:[-1,-1,-1],magenta:[255,0,255],orange:[255,165,0],brown:[165,42,42]},isNamedColor:function(j){return this.NAMED[j]!==undefined;
},isSystemColor:function(k){return this.SYSTEM[k]!==undefined;
},supportsThemes:function(){return qx.Class.isDefined(c);
},isThemedColor:function(l){if(!this.supportsThemes()){return false;
}return qx.theme.manager.Color.getInstance().isDynamic(l);
},stringToRgb:function(m){if(this.supportsThemes()&&this.isThemedColor(m)){var m=qx.theme.manager.Color.getInstance().resolveDynamic(m);
}
if(this.isNamedColor(m)){return this.NAMED[m];
}else if(this.isSystemColor(m)){throw new Error("Could not convert system colors to RGB: "+m);
}else if(this.isRgbString(m)){return this.__cY();
}else if(this.isHex3String(m)){return this.__db();
}else if(this.isHex6String(m)){return this.__dc();
}throw new Error("Could not parse color: "+m);
},cssStringToRgb:function(n){if(this.isNamedColor(n)){return this.NAMED[n];
}else if(this.isSystemColor(n)){throw new Error("Could not convert system colors to RGB: "+n);
}else if(this.isRgbString(n)){return this.__cY();
}else if(this.isRgbaString(n)){return this.__da();
}else if(this.isHex3String(n)){return this.__db();
}else if(this.isHex6String(n)){return this.__dc();
}throw new Error("Could not parse color: "+n);
},stringToRgbString:function(o){return this.rgbToRgbString(this.stringToRgb(o));
},rgbToRgbString:function(s){return e+s[0]+h+s[1]+h+s[2]+d;
},rgbToHexString:function(u){return (qx.lang.String.pad(u[0].toString(16).toUpperCase(),2)+qx.lang.String.pad(u[1].toString(16).toUpperCase(),2)+qx.lang.String.pad(u[2].toString(16).toUpperCase(),2));
},isValidPropertyValue:function(v){return (this.isThemedColor(v)||this.isNamedColor(v)||this.isHex3String(v)||this.isHex6String(v)||this.isRgbString(v)||this.isRgbaString(v));
},isCssString:function(w){return (this.isSystemColor(w)||this.isNamedColor(w)||this.isHex3String(w)||this.isHex6String(w)||this.isRgbString(w)||this.isRgbaString(w));
},isHex3String:function(x){return this.REGEXP.hex3.test(x);
},isHex6String:function(y){return this.REGEXP.hex6.test(y);
},isRgbString:function(z){return this.REGEXP.rgb.test(z);
},isRgbaString:function(A){return this.REGEXP.rgba.test(A);
},__cY:function(){var D=parseInt(RegExp.$1,10);
var C=parseInt(RegExp.$2,10);
var B=parseInt(RegExp.$3,10);
return [D,C,B];
},__da:function(){var G=parseInt(RegExp.$1,10);
var F=parseInt(RegExp.$2,10);
var E=parseInt(RegExp.$3,10);
return [G,F,E];
},__db:function(){var J=parseInt(RegExp.$1,16)*17;
var I=parseInt(RegExp.$2,16)*17;
var H=parseInt(RegExp.$3,16)*17;
return [J,I,H];
},__dc:function(){var M=(parseInt(RegExp.$1,16)*16)+parseInt(RegExp.$2,16);
var L=(parseInt(RegExp.$3,16)*16)+parseInt(RegExp.$4,16);
var K=(parseInt(RegExp.$5,16)*16)+parseInt(RegExp.$6,16);
return [M,L,K];
},hex3StringToRgb:function(N){if(this.isHex3String(N)){return this.__db(N);
}throw new Error("Invalid hex3 value: "+N);
},hex6StringToRgb:function(O){if(this.isHex6String(O)){return this.__dc(O);
}throw new Error("Invalid hex6 value: "+O);
},hexStringToRgb:function(P){if(this.isHex3String(P)){return this.__db(P);
}
if(this.isHex6String(P)){return this.__dc(P);
}throw new Error("Invalid hex value: "+P);
},rgbToHsb:function(Q){var S,T,V;
var bc=Q[0];
var Y=Q[1];
var R=Q[2];
var bb=(bc>Y)?bc:Y;

if(R>bb){bb=R;
}var U=(bc<Y)?bc:Y;

if(R<U){U=R;
}V=bb/255.0;

if(bb!=0){T=(bb-U)/bb;
}else{T=0;
}
if(T==0){S=0;
}else{var X=(bb-bc)/(bb-U);
var ba=(bb-Y)/(bb-U);
var W=(bb-R)/(bb-U);

if(bc==bb){S=W-ba;
}else if(Y==bb){S=2.0+X-W;
}else{S=4.0+ba-X;
}S=S/6.0;

if(S<0){S=S+1.0;
}}return [Math.round(S*360),Math.round(T*100),Math.round(V*100)];
},hsbToRgb:function(bd){var i,f,p,q,t;
var be=bd[0]/360;
var bf=bd[1]/100;
var bg=bd[2]/100;

if(be>=1.0){be%=1.0;
}
if(bf>1.0){bf=1.0;
}
if(bg>1.0){bg=1.0;
}var bh=Math.floor(255*bg);
var bi={};

if(bf==0.0){bi.red=bi.green=bi.blue=bh;
}else{be*=6.0;
i=Math.floor(be);
f=be-i;
p=Math.floor(bh*(1.0-bf));
q=Math.floor(bh*(1.0-(bf*f)));
t=Math.floor(bh*(1.0-(bf*(1.0-f))));

switch(i){case 0:bi.red=bh;
bi.green=t;
bi.blue=p;
break;
case 1:bi.red=q;
bi.green=bh;
bi.blue=p;
break;
case 2:bi.red=p;
bi.green=bh;
bi.blue=t;
break;
case 3:bi.red=p;
bi.green=q;
bi.blue=bh;
break;
case 4:bi.red=t;
bi.green=p;
bi.blue=bh;
break;
case 5:bi.red=bh;
bi.green=p;
bi.blue=q;
break;
}}return [bi.red,bi.green,bi.blue];
},randomColor:function(){var r=Math.round(Math.random()*255);
var g=Math.round(Math.random()*255);
var b=Math.round(Math.random()*255);
return this.rgbToRgbString([r,g,b]);
}}});
})();
(function(){var m="object",l="__dd",k="_applyTheme",j="",h="_",g="qx.ui.decoration.",f="qx.theme.manager.Decoration",e=".",d="Theme",c="changeTheme",a="string",b="singleton";
qx.Class.define(f,{type:b,extend:qx.core.Object,properties:{theme:{check:d,nullable:true,apply:k,event:c}},members:{__dd:null,resolve:function(n){if(!n){return null;
}
if(typeof n===m){return n;
}var s=this.getTheme();

if(!s){return null;
}var p=this.__dd;

if(!p){p=this.__dd={};
}var o=p[n];

if(o){return o;
}var v=s.decorations[n];

if(!v){return null;
}if(!v.style){v.style={};
}var q=v;

while(q.include){q=s.decorations[q.include];
if(!v.decorator&&q.decorator){v.decorator=q.decorator;
}if(q.style){for(var u in q.style){if(v.style[u]==undefined){v.style[u]=q.style[u];
}}}}var r=v.decorator;

if(r==null){throw new Error("Missing definition of which decorator to use in entry: "+n+"!");
}if(r instanceof Array){var t=r.concat([]);

for(var i=0;i<t.length;i++){t[i]=t[i].basename.replace(e,j);
}var name=g+t.join(h);

if(!qx.Class.getByName(name)){qx.Class.define(name,{extend:qx.ui.decoration.DynamicDecorator,include:r});
}r=qx.Class.getByName(name);
}return p[n]=(new r).set(v.style);
},isValidPropertyValue:function(w){if(typeof w===a){return this.isDynamic(w);
}else if(typeof w===m){var x=w.constructor;
return qx.Class.hasInterface(x,qx.ui.decoration.IDecorator);
}return false;
},isDynamic:function(y){if(!y){return false;
}var z=this.getTheme();

if(!z){return false;
}return !!z.decorations[y];
},isCached:function(A){return qx.lang.Object.contains(this.__dd,A);
},_applyTheme:function(B,C){var E=qx.util.AliasManager.getInstance();

if(C){for(var D in C.aliases){E.remove(D);
}}
if(B){for(var D in B.aliases){E.add(D,B.aliases[D]);
}}
if(!B){this.__dd={};
}}},destruct:function(){this._disposeMap(l);
}});
})();
(function(){var a="qx.ui.decoration.IDecorator";
qx.Interface.define(a,{members:{getMarkup:function(){},resize:function(b,c,d){},tint:function(e,f){},getInsets:function(){}}});
})();
(function(){var i="Number",h="_applyInsets",g="abstract",f="insetRight",e="insetTop",d="insetBottom",c="qx.ui.decoration.Abstract",b="shorthand",a="insetLeft";
qx.Class.define(c,{extend:qx.core.Object,implement:[qx.ui.decoration.IDecorator],type:g,properties:{insetLeft:{check:i,nullable:true,apply:h},insetRight:{check:i,nullable:true,apply:h},insetBottom:{check:i,nullable:true,apply:h},insetTop:{check:i,nullable:true,apply:h},insets:{group:[e,f,d,a],mode:b}},members:{__de:null,_getDefaultInsets:function(){throw new Error("Abstract method called.");
},_isInitialized:function(){throw new Error("Abstract method called.");
},_resetInsets:function(){this.__de=null;
},getInsets:function(){if(this.__de){return this.__de;
}var j=this._getDefaultInsets();
return this.__de={left:this.getInsetLeft()==null?j.left:this.getInsetLeft(),right:this.getInsetRight()==null?j.right:this.getInsetRight(),bottom:this.getInsetBottom()==null?j.bottom:this.getInsetBottom(),top:this.getInsetTop()==null?j.top:this.getInsetTop()};
},_applyInsets:function(){this.__de=null;
}},destruct:function(){this.__de=null;
}});
})();
(function(){var o="px",n="top",m="_tint",l="abstract",k='<div style="',j="",h="_getDefaultInsetsFor",g="bottom",f="qx.ui.decoration.DynamicDecorator",e="left",b="right",d="_resize",c="_style",a='"></div>';
qx.Class.define(f,{extend:qx.ui.decoration.Abstract,type:l,members:{getStyles:function(){var r={};
var q=this._getStyles();

for(var p in q){r[qx.lang.String.camelCase(p)]=q[p];
}return r;
},_getStyles:function(){var s={};

for(var name in this){if(name.indexOf(c)==0&&this[name] instanceof Function){this[name](s);
}}return s;
},getMarkup:function(){if(this._markup){return this._markup;
}var t=this._getStyles();
if(!this._generateMarkup){var u=[k];
u.push(qx.bom.element.Style.compile(t));
u.push(a);
u=u.join(j);
}else{var u=this._generateMarkup(t);
}return this._markup=u;
},resize:function(v,w,x){var z={};

for(var name in this){if(name.indexOf(d)==0&&this[name] instanceof Function){var y=this[name](v,w,x);

if(z.left==undefined){z.left=y.left;
z.top=y.top;
}
if(z.width==undefined){z.width=y.width;
z.height=y.height;
}
if(y.elementToApplyDimensions){z.elementToApplyDimensions=y.elementToApplyDimensions;
}z.left=y.left<z.left?y.left:z.left;
z.top=y.top<z.top?y.top:z.top;
z.width=y.width>z.width?y.width:z.width;
z.height=y.height>z.height?y.height:z.height;
}}if(z.left!=undefined){v.style.left=z.left+o;
v.style.top=z.top+o;
}if(z.width!=undefined){if(z.width<0){z.width=0;
}
if(z.height<0){z.height=0;
}
if(z.elementToApplyDimensions){v=z.elementToApplyDimensions;
}v.style.width=z.width+o;
v.style.height=z.height+o;
}},tint:function(A,B){for(var name in this){if(name.indexOf(m)==0&&this[name] instanceof Function){this[name](A,B,A.style);
}}},_isInitialized:function(){return !!this._markup;
},_getDefaultInsets:function(){var F=[n,b,g,e];
var D={};

for(var name in this){if(name.indexOf(h)==0&&this[name] instanceof Function){var E=this[name]();

for(var i=0;i<F.length;i++){var C=F[i];
if(D[C]==undefined){D[C]=E[C];
}if(E[C]<D[C]){D[C]=E[C];
}}}}if(D[n]!=undefined){return D;
}return {top:0,right:0,bottom:0,left:0};
}}});
})();
(function(){var k="n-resize",j="e-resize",i="nw-resize",h="ne-resize",g="engine.name",f="",e="cursor:",d=";",c="qx.bom.element.Cursor",b="cursor",a="hand";
qx.Class.define(c,{statics:{__bd:qx.core.Environment.select(g,{"mshtml":{"cursor":a,"ew-resize":j,"ns-resize":k,"nesw-resize":h,"nwse-resize":i},"opera":{"col-resize":j,"row-resize":k,"ew-resize":j,"ns-resize":k,"nesw-resize":h,"nwse-resize":i},"default":{}}),compile:function(l){return e+(this.__bd[l]||l)+d;
},get:function(m,n){return qx.bom.element.Style.get(m,b,n,false);
},set:function(o,p){o.style.cursor=this.__bd[p]||p;
},reset:function(q){q.style.cursor=f;
}}});
})();
(function(){var k="engine.version",j="",i="engine.name",h="hidden",g="-moz-scrollbars-none",f="overflow",e=";",d="overflowY",b=":",a="overflowX",C="overflow:",B="none",A="scroll",z="os.name",y="borderLeftStyle",x="borderRightStyle",w="div",v="borderRightWidth",u="osx",r="overflow-y",p="borderLeftWidth",q="100px",n="-moz-scrollbars-vertical",o="qx.bom.element.Overflow",l="overflow-x",m="qx.nativeScrollBars";
qx.Class.define(o,{statics:{DEFAULT_SCROLLBAR_WIDTH:14,scollBarOverlayed:function(){var D=qx.bom.element.Overflow.getScrollbarWidth();
var E=qx.core.Environment.get(z)===u;
var F=qx.core.Environment.get(m);
return D==0&&E&&F;
},__df:null,getScrollbarWidth:function(){if(this.__df!==null){return this.__df;
}var G=qx.bom.element.Style;
var I=function(M,N){return parseInt(G.get(M,N),10)||0;
};
var J=function(O){return (G.get(O,x)==B?0:I(O,v));
};
var H=function(P){return (G.get(P,y)==B?0:I(P,p));
};
var L=qx.core.Environment.select(i,{"mshtml":function(Q){if(G.get(Q,d)==h||Q.clientWidth==0){return J(Q);
}return Math.max(0,Q.offsetWidth-Q.clientLeft-Q.clientWidth);
},"default":function(R){if(R.clientWidth==0){var S=G.get(R,f);
var T=(S==A||S==n?16:0);
return Math.max(0,J(R)+T);
}return Math.max(0,(R.offsetWidth-R.clientWidth-H(R)));
}});
var K=function(U){return L(U)-J(U);
};
var t=document.createElement(w);
var s=t.style;
s.height=s.width=q;
s.overflow=A;
document.body.appendChild(t);
var c=K(t);
this.__df=c;
document.body.removeChild(t);
return this.__df;
},_compile:qx.core.Environment.select(i,{"gecko":parseFloat(qx.core.Environment.get(k))<1.8?function(V,W){if(W==h){W=g;
}return C+W+e;
}:function(X,Y){return X+b+Y+e;
},"opera":parseFloat(qx.core.Environment.get(k))<9.5?function(ba,bb){return C+bb+e;
}:function(bc,bd){return bc+b+bd+e;
},"default":function(be,bf){return be+b+bf+e;
}}),compileX:function(bg){return this._compile(l,bg);
},compileY:function(bh){return this._compile(r,bh);
},getX:qx.core.Environment.select(i,{"gecko":parseFloat(qx.core.Environment.get(k))<1.8?function(bi,bj){var bk=qx.bom.element.Style.get(bi,f,bj,false);

if(bk===g){bk=h;
}return bk;
}:function(bl,bm){return qx.bom.element.Style.get(bl,a,bm,false);
},"opera":parseFloat(qx.core.Environment.get(k))<9.5?function(bn,bo){return qx.bom.element.Style.get(bn,f,bo,false);
}:function(bp,bq){return qx.bom.element.Style.get(bp,a,bq,false);
},"default":function(br,bs){return qx.bom.element.Style.get(br,a,bs,false);
}}),setX:qx.core.Environment.select(i,{"gecko":parseFloat(qx.core.Environment.get(k))<1.8?function(bt,bu){if(bu==h){bu=g;
}bt.style.overflow=bu;
}:function(bv,bw){bv.style.overflowX=bw;
},"opera":parseFloat(qx.core.Environment.get(k))<9.5?function(bx,by){bx.style.overflow=by;
}:function(bz,bA){bz.style.overflowX=bA;
},"default":function(bB,bC){bB.style.overflowX=bC;
}}),resetX:qx.core.Environment.select(i,{"gecko":parseFloat(qx.core.Environment.get(k))<1.8?function(bD){bD.style.overflow=j;
}:function(bE){bE.style.overflowX=j;
},"opera":parseFloat(qx.core.Environment.get(k))<9.5?function(bF,bG){bF.style.overflow=j;
}:function(bH,bI){bH.style.overflowX=j;
},"default":function(bJ){bJ.style.overflowX=j;
}}),getY:qx.core.Environment.select(i,{"gecko":parseFloat(qx.core.Environment.get(k))<1.8?function(bK,bL){var bM=qx.bom.element.Style.get(bK,f,bL,false);

if(bM===g){bM=h;
}return bM;
}:function(bN,bO){return qx.bom.element.Style.get(bN,d,bO,false);
},"opera":parseFloat(qx.core.Environment.get(k))<9.5?function(bP,bQ){return qx.bom.element.Style.get(bP,f,bQ,false);
}:function(bR,bS){return qx.bom.element.Style.get(bR,d,bS,false);
},"default":function(bT,bU){return qx.bom.element.Style.get(bT,d,bU,false);
}}),setY:qx.core.Environment.select(i,{"gecko":parseFloat(qx.core.Environment.get(k))<1.8?function(bV,bW){if(bW===h){bW=g;
}bV.style.overflow=bW;
}:function(bX,bY){bX.style.overflowY=bY;
},"opera":parseFloat(qx.core.Environment.get(k))<9.5?function(ca,cb){ca.style.overflow=cb;
}:function(cc,cd){cc.style.overflowY=cd;
},"default":function(ce,cf){ce.style.overflowY=cf;
}}),resetY:qx.core.Environment.select(i,{"gecko":parseFloat(qx.core.Environment.get(k))<1.8?function(cg){cg.style.overflow=j;
}:function(ch){ch.style.overflowY=j;
},"opera":parseFloat(qx.core.Environment.get(k))<9.5?function(ci,cj){ci.style.overflow=j;
}:function(ck,cl){ck.style.overflowY=j;
},"default":function(cm){cm.style.overflowY=j;
}})}});
})();
(function(){var q="engine.name",p="",o="boxSizing",n="box-sizing",m="qx.bom.element.BoxSizing",k="KhtmlBoxSizing",j="border-box",h="-moz-box-sizing",g="WebkitBoxSizing",f=":",c=";",e="-khtml-box-sizing",d="content-box",b="-webkit-box-sizing",a="MozBoxSizing";
qx.Class.define(m,{statics:{__dg:qx.core.Environment.select(q,{"mshtml":null,"webkit":[o,k,g],"gecko":[a],"opera":[o]}),__dh:qx.core.Environment.select(q,{"mshtml":null,"webkit":[n,e,b],"gecko":[h],"opera":[n]}),__di:{tags:{button:true,select:true},types:{search:true,button:true,submit:true,reset:true,checkbox:true,radio:true}},__dj:function(r){var s=this.__di;
return s.tags[r.tagName.toLowerCase()]||s.types[r.type];
},compile:qx.core.Environment.select(q,{"mshtml":function(t){},"default":function(u){var w=this.__dh;
var v=p;

if(w){for(var i=0,l=w.length;i<l;i++){v+=w[i]+f+u+c;
}}return v;
}}),get:qx.core.Environment.select(q,{"mshtml":function(x){if(qx.bom.Document.isStandardMode(qx.dom.Node.getDocument(x))){if(!this.__dj(x)){return d;
}}return j;
},"default":function(y){var A=this.__dg;
var z;

if(A){for(var i=0,l=A.length;i<l;i++){z=qx.bom.element.Style.get(y,A[i],null,false);

if(z!=null&&z!==p){return z;
}}}return p;
}}),set:qx.core.Environment.select(q,{"mshtml":function(B,C){},"default":function(D,E){var F=this.__dg;

if(F){for(var i=0,l=F.length;i<l;i++){D.style[F[i]]=E;
}}}}),reset:function(G){this.set(G,p);
}}});
})();
(function(){var g="CSS1Compat",f="engine.name",e="position:absolute;width:0;height:0;width:1",d="engine.version",c="qx.bom.Document",b="1px",a="div";
qx.Class.define(c,{statics:{isQuirksMode:qx.core.Environment.select(f,{"mshtml":function(h){if(qx.core.Environment.get(d)>=8){return (h||window).document.documentMode===5;
}else{return (h||window).document.compatMode!==g;
}},"webkit":function(i){if(document.compatMode===undefined){var j=(i||window).document.createElement(a);
j.style.cssText=e;
return j.style.width===b?true:false;
}else{return (i||window).document.compatMode!==g;
}},"default":function(k){return (k||window).document.compatMode!==g;
}}),isStandardMode:function(l){return !this.isQuirksMode(l);
},getWidth:function(m){var n=(m||window).document;
var o=qx.bom.Viewport.getWidth(m);
var scroll=this.isStandardMode(m)?n.documentElement.scrollWidth:n.body.scrollWidth;
return Math.max(scroll,o);
},getHeight:function(p){var q=(p||window).document;
var r=qx.bom.Viewport.getHeight(p);
var scroll=this.isStandardMode(p)?q.documentElement.scrollHeight:q.body.scrollHeight;
return Math.max(scroll,r);
}}});
})();
(function(){var c="engine.version",b="engine.name",a="qx.bom.Viewport";
qx.Class.define(a,{statics:{getWidth:qx.core.Environment.select(b,{"opera":function(d){if(parseFloat(qx.core.Environment.get(c))<9.5){return (d||window).document.body.clientWidth;
}else{var e=(d||window).document;
return qx.bom.Document.isStandardMode(d)?e.documentElement.clientWidth:e.body.clientWidth;
}},"webkit":function(f){if(parseFloat(qx.core.Environment.get(c))<523.15){return (f||window).innerWidth;
}else{var g=(f||window).document;
return qx.bom.Document.isStandardMode(f)?g.documentElement.clientWidth:g.body.clientWidth;
}},"default":function(h){var i=(h||window).document;
return qx.bom.Document.isStandardMode(h)?i.documentElement.clientWidth:i.body.clientWidth;
}}),getHeight:qx.core.Environment.select(b,{"opera":function(j){if(parseFloat(qx.core.Environment.get(c))<9.5){return (j||window).document.body.clientHeight;
}else{var k=(j||window).document;
return qx.bom.Document.isStandardMode(j)?k.documentElement.clientHeight:k.body.clientHeight;
}},"webkit":function(l){if(parseFloat(qx.core.Environment.get(c))<523.15){return (l||window).innerHeight;
}else{var m=(l||window).document;
return qx.bom.Document.isStandardMode(l)?m.documentElement.clientHeight:m.body.clientHeight;
}},"default":function(n){var o=(n||window).document;
return qx.bom.Document.isStandardMode(n)?o.documentElement.clientHeight:o.body.clientHeight;
}}),getScrollLeft:qx.core.Environment.select(b,{"mshtml":function(p){var q=(p||window).document;
return q.documentElement.scrollLeft||q.body.scrollLeft;
},"default":function(r){return (r||window).pageXOffset;
}}),getScrollTop:qx.core.Environment.select(b,{"mshtml":function(s){var t=(s||window).document;
return t.documentElement.scrollTop||t.body.scrollTop;
},"default":function(u){return (u||window).pageYOffset;
}}),__dk:function(){var v=this.getWidth()>this.getHeight()?90:0;
var w=window.orientation;

if(w==null||Math.abs(w%180)==v){return {"-270":90,"-180":180,"-90":-90,"0":0,"90":90,"180":180,"270":-90};
}else{return {"-270":180,"-180":-90,"-90":0,"0":90,"90":180,"180":-90,"270":0};
}},__dl:null,getOrientation:function(x){var y=(x||window).orientation;

if(y==null){y=this.getWidth(x)>this.getHeight(x)?90:0;
}else{y=this.__dl[y];
}return y;
},isLandscape:function(z){return Math.abs(this.getOrientation(z))==90;
},isPortrait:function(A){return Math.abs(this.getOrientation(A))!==90;
}},defer:function(B){B.__dl=B.__dk();
}});
})();
(function(){var o="auto",n="px",m=",",l="clip:auto;",k="rect(",j=");",i="",h=")",g="qx.bom.element.Clip",f="string",c="clip:rect(",e=" ",d="clip",b="rect(auto,auto,auto,auto)",a="rect(auto, auto, auto, auto)";
qx.Class.define(g,{statics:{compile:function(p){if(!p){return l;
}var u=p.left;
var top=p.top;
var t=p.width;
var s=p.height;
var q,r;

if(u==null){q=(t==null?o:t+n);
u=o;
}else{q=(t==null?o:u+t+n);
u=u+n;
}
if(top==null){r=(s==null?o:s+n);
top=o;
}else{r=(s==null?o:top+s+n);
top=top+n;
}return c+top+m+q+m+r+m+u+j;
},get:function(v,w){var y=qx.bom.element.Style.get(v,d,w,false);
var E,top,C,B;
var x,z;

if(typeof y===f&&y!==o&&y!==i){y=qx.lang.String.trim(y);
if(/\((.*)\)/.test(y)){var D=RegExp.$1;
if(/,/.test(D)){var A=D.split(m);
}else{var A=D.split(e);
}top=qx.lang.String.trim(A[0]);
x=qx.lang.String.trim(A[1]);
z=qx.lang.String.trim(A[2]);
E=qx.lang.String.trim(A[3]);
if(E===o){E=null;
}
if(top===o){top=null;
}
if(x===o){x=null;
}
if(z===o){z=null;
}if(top!=null){top=parseInt(top,10);
}
if(x!=null){x=parseInt(x,10);
}
if(z!=null){z=parseInt(z,10);
}
if(E!=null){E=parseInt(E,10);
}if(x!=null&&E!=null){C=x-E;
}else if(x!=null){C=x;
}
if(z!=null&&top!=null){B=z-top;
}else if(z!=null){B=z;
}}else{throw new Error("Could not parse clip string: "+y);
}}return {left:E||null,top:top||null,width:C||null,height:B||null};
},set:function(F,G){if(!G){F.style.clip=b;
return;
}var L=G.left;
var top=G.top;
var K=G.width;
var J=G.height;
var H,I;

if(L==null){H=(K==null?o:K+n);
L=o;
}else{H=(K==null?o:L+K+n);
L=L+n;
}
if(top==null){I=(J==null?o:J+n);
top=o;
}else{I=(J==null?o:top+J+n);
top=top+n;
}F.style.clip=k+top+m+H+m+I+m+L+h;
},reset:function(M){M.style.clip=a;
}}});
})();
(function(){var m="",l="engine.name",k=";",j="opacity:",i="opacity",h="filter",g="MozOpacity",f=");",e=")",d="zoom:1;filter:alpha(opacity=",a="qx.bom.element.Opacity",c="alpha(opacity=",b="-moz-opacity:";
qx.Class.define(a,{statics:{SUPPORT_CSS3_OPACITY:false,compile:qx.core.Environment.select(l,{"mshtml":function(n){if(n>=1){n=1;
}
if(n<0.00001){n=0;
}
if(qx.bom.element.Opacity.SUPPORT_CSS3_OPACITY){return j+n+k;
}else{return d+(n*100)+f;
}},"gecko":function(o){if(o>=1){o=0.999999;
}
if(!qx.bom.element.Opacity.SUPPORT_CSS3_OPACITY){return b+o+k;
}else{return j+o+k;
}},"default":function(p){if(p>=1){return m;
}return j+p+k;
}}),set:qx.core.Environment.select(l,{"mshtml":function(q,r){if(qx.bom.element.Opacity.SUPPORT_CSS3_OPACITY){if(r>=1){r=m;
}q.style.opacity=r;
}else{var s=qx.bom.element.Style.get(q,h,qx.bom.element.Style.COMPUTED_MODE,false);

if(r>=1){r=1;
}
if(r<0.00001){r=0;
}if(!q.currentStyle||!q.currentStyle.hasLayout){q.style.zoom=1;
}q.style.filter=s.replace(/alpha\([^\)]*\)/gi,m)+c+r*100+e;
}},"gecko":function(t,u){if(u>=1){u=0.999999;
}
if(!qx.bom.element.Opacity.SUPPORT_CSS3_OPACITY){t.style.MozOpacity=u;
}else{t.style.opacity=u;
}},"default":function(v,w){if(w>=1){w=m;
}v.style.opacity=w;
}}),reset:qx.core.Environment.select(l,{"mshtml":function(x){if(qx.bom.element.Opacity.SUPPORT_CSS3_OPACITY){x.style.opacity=m;
}else{var y=qx.bom.element.Style.get(x,h,qx.bom.element.Style.COMPUTED_MODE,false);
x.style.filter=y.replace(/alpha\([^\)]*\)/gi,m);
}},"gecko":function(z){if(!qx.bom.element.Opacity.SUPPORT_CSS3_OPACITY){z.style.MozOpacity=m;
}else{z.style.opacity=m;
}},"default":function(A){A.style.opacity=m;
}}),get:qx.core.Environment.select(l,{"mshtml":function(B,C){if(qx.bom.element.Opacity.SUPPORT_CSS3_OPACITY){var D=qx.bom.element.Style.get(B,i,C,false);

if(D!=null){return parseFloat(D);
}return 1.0;
}else{var E=qx.bom.element.Style.get(B,h,C,false);

if(E){var D=E.match(/alpha\(opacity=(.*)\)/);

if(D&&D[1]){return parseFloat(D[1])/100;
}}return 1.0;
}},"gecko":function(F,G){var H=qx.bom.element.Style.get(F,!qx.bom.element.Opacity.SUPPORT_CSS3_OPACITY?g:i,G,false);

if(H==0.999999){H=1.0;
}
if(H!=null){return parseFloat(H);
}return 1.0;
},"default":function(I,J){var K=qx.bom.element.Style.get(I,i,J,false);

if(K!=null){return parseFloat(K);
}return 1.0;
}})},defer:function(L){L.SUPPORT_CSS3_OPACITY=(typeof document.documentElement.style.opacity=="string");
}});
})();
(function(){var m="",k="engine.name",h="userSelect",g="style",f="MozUserModify",e="px",d="pixelBottom",c="float",b="borderImage",a="styleFloat",F="appearance",E="pixelHeight",D='Ms',C=":",B="cssFloat",A="pixelTop",z="pixelLeft",y='O',x="qx.bom.element.Style",w='Khtml',t='string',u="pixelRight",r='Moz',s="pixelWidth",p=";",q="textOverflow",n="userModify",o='Webkit',v="WebkitUserModify";
qx.Class.define(x,{statics:{__dm:function(){var G=[F,h,q,b];
var K={};
var H=document.documentElement.style;
var L=[r,o,w,y,D];

for(var i=0,l=G.length;i<l;i++){var M=G[i];
var I=M;

if(H[M]){K[I]=M;
continue;
}M=qx.lang.String.firstUp(M);

for(var j=0,N=L.length;j<N;j++){var J=L[j]+M;

if(typeof H[J]==t){K[I]=J;
break;
}}}this.__dn=K;
this.__dn[n]=qx.core.Environment.select(k,{"gecko":f,"webkit":v,"default":h});
this.__do={};

for(var I in K){this.__do[I]=qx.lang.String.hyphenate(K[I]);
}this.__dn[c]=qx.core.Environment.select(k,{"mshtml":a,"default":B});
},__dp:{width:s,height:E,left:z,right:u,top:A,bottom:d},__dq:{clip:qx.bom.element.Clip,cursor:qx.bom.element.Cursor,opacity:qx.bom.element.Opacity,boxSizing:qx.bom.element.BoxSizing,overflowX:{set:qx.lang.Function.bind(qx.bom.element.Overflow.setX,qx.bom.element.Overflow),get:qx.lang.Function.bind(qx.bom.element.Overflow.getX,qx.bom.element.Overflow),reset:qx.lang.Function.bind(qx.bom.element.Overflow.resetX,qx.bom.element.Overflow),compile:qx.lang.Function.bind(qx.bom.element.Overflow.compileX,qx.bom.element.Overflow)},overflowY:{set:qx.lang.Function.bind(qx.bom.element.Overflow.setY,qx.bom.element.Overflow),get:qx.lang.Function.bind(qx.bom.element.Overflow.getY,qx.bom.element.Overflow),reset:qx.lang.Function.bind(qx.bom.element.Overflow.resetY,qx.bom.element.Overflow),compile:qx.lang.Function.bind(qx.bom.element.Overflow.compileY,qx.bom.element.Overflow)}},compile:function(O){var Q=[];
var S=this.__dq;
var R=this.__do;
var name,P;

for(name in O){P=O[name];

if(P==null){continue;
}name=R[name]||name;
if(S[name]){Q.push(S[name].compile(P));
}else{Q.push(qx.lang.String.hyphenate(name),C,P,p);
}}return Q.join(m);
},setCss:qx.core.Environment.select(k,{"mshtml":function(T,U){T.style.cssText=U;
},"default":function(V,W){V.setAttribute(g,W);
}}),getCss:qx.core.Environment.select(k,{"mshtml":function(X){return X.style.cssText.toLowerCase();
},"default":function(Y){return Y.getAttribute(g);
}}),isPropertySupported:function(ba){return (this.__dq[ba]||this.__dn[ba]||ba in document.documentElement.style);
},COMPUTED_MODE:1,CASCADED_MODE:2,LOCAL_MODE:3,set:function(bb,name,bc,bd){name=this.__dn[name]||name;
if(bd!==false&&this.__dq[name]){return this.__dq[name].set(bb,bc);
}else{bb.style[name]=bc!==null?bc:m;
}},setStyles:function(be,bf,bg){var bj=this.__dn;
var bl=this.__dq;
var bh=be.style;

for(var bk in bf){var bi=bf[bk];
var name=bj[bk]||bk;

if(bi===undefined){if(bg!==false&&bl[name]){bl[name].reset(be);
}else{bh[name]=m;
}}else{if(bg!==false&&bl[name]){bl[name].set(be,bi);
}else{bh[name]=bi!==null?bi:m;
}}}},reset:function(bm,name,bn){name=this.__dn[name]||name;
if(bn!==false&&this.__dq[name]){return this.__dq[name].reset(bm);
}else{bm.style[name]=m;
}},get:qx.core.Environment.select(k,{"mshtml":function(bo,name,bp,bq){name=this.__dn[name]||name;
if(bq!==false&&this.__dq[name]){return this.__dq[name].get(bo,bp);
}if(!bo.currentStyle){return bo.style[name]||m;
}switch(bp){case this.LOCAL_MODE:return bo.style[name]||m;
case this.CASCADED_MODE:return bo.currentStyle[name]||m;
default:var bu=bo.currentStyle[name]||m;
if(/^-?[\.\d]+(px)?$/i.test(bu)){return bu;
}var bt=this.__dp[name];

if(bt){var br=bo.style[name];
bo.style[name]=bu||0;
var bs=bo.style[bt]+e;
bo.style[name]=br;
return bs;
}if(/^-?[\.\d]+(em|pt|%)?$/i.test(bu)){throw new Error("Untranslated computed property value: "+name+". Only pixel values work well across different clients.");
}return bu;
}},"default":function(bv,name,bw,bx){name=this.__dn[name]||name;
if(bx!==false&&this.__dq[name]){return this.__dq[name].get(bv,bw);
}switch(bw){case this.LOCAL_MODE:return bv.style[name]||m;
case this.CASCADED_MODE:if(bv.currentStyle){return bv.currentStyle[name]||m;
}throw new Error("Cascaded styles are not supported in this browser!");
default:var by=qx.dom.Node.getDocument(bv);
var bz=by.defaultView.getComputedStyle(bv,null);
return bz?bz[name]:m;
}}})},defer:function(bA){bA.__dm();
}});
})();
(function(){var b="ecmascript.objectcount",a="qx.bom.client.EcmaScript";
qx.Bootstrap.define(a,{statics:{getObjectCount:function(){return (({}).__count__==0);
}},defer:function(c){qx.core.Environment.add(b,c.getObjectCount);
}});
})();
(function(){var e="=",d="ecmascript.objectcount",c="+",b="qx.lang.Object",a="&";
qx.Class.define(b,{statics:{empty:function(f){for(var g in f){if(f.hasOwnProperty(g)){delete f[g];
}}},isEmpty:(qx.core.Environment.get(d))?function(h){return h.__count__===0;
}:function(j){for(var k in j){return false;
}return true;
},hasMinLength:(qx.core.Environment.get(d))?function(m,n){return m.__count__>=n;
}:function(o,p){if(p<=0){return true;
}var length=0;

for(var q in o){if((++length)>=p){return true;
}}return false;
},getLength:qx.Bootstrap.objectGetLength,getKeys:qx.Bootstrap.getKeys,getKeysAsString:qx.Bootstrap.getKeysAsString,getValues:function(r){var t=[];
var s=this.getKeys(r);

for(var i=0,l=s.length;i<l;i++){t.push(r[s[i]]);
}return t;
},mergeWith:qx.Bootstrap.objectMergeWith,carefullyMergeWith:function(u,v){return qx.lang.Object.mergeWith(u,v,false);
},merge:function(w,x){var y=arguments.length;

for(var i=1;i<y;i++){qx.lang.Object.mergeWith(w,arguments[i]);
}return w;
},clone:function(z){var A={};

for(var B in z){A[B]=z[B];
}return A;
},invert:function(C){var D={};

for(var E in C){D[C[E].toString()]=E;
}return D;
},getKeyFromValue:function(F,G){for(var H in F){if(F.hasOwnProperty(H)&&F[H]===G){return H;
}}return null;
},contains:function(I,J){return this.getKeyFromValue(I,J)!==null;
},select:function(K,L){return L[K];
},fromArray:function(M){var N={};

for(var i=0,l=M.length;i<l;i++){N[M[i].toString()]=true;
}return N;
},toUriParameter:function(O,P){var S,R=[],Q=window.encodeURIComponent;

for(S in O){if(O.hasOwnProperty(S)){if(P){R.push(Q(S).replace(/%20/g,c)+e+Q(O[S]).replace(/%20/g,c));
}else{R.push(Q(S)+e+Q(O[S]));
}}}return R.join(a);
}}});
})();
(function(){var j="/",i="0",h="qx/static",g="http://",f="https://",e="file://",d="qx.util.AliasManager",c="singleton",b=".",a="static";
qx.Class.define(d,{type:c,extend:qx.util.ValueManager,construct:function(){qx.util.ValueManager.call(this);
this.__dr={};
this.add(a,h);
},members:{__dr:null,_preprocess:function(k){var n=this._getDynamic();

if(n[k]===false){return k;
}else if(n[k]===undefined){if(k.charAt(0)===j||k.charAt(0)===b||k.indexOf(g)===0||k.indexOf(f)===i||k.indexOf(e)===0){n[k]=false;
return k;
}
if(this.__dr[k]){return this.__dr[k];
}var m=k.substring(0,k.indexOf(j));
var l=this.__dr[m];

if(l!==undefined){n[k]=l+k.substring(m.length);
}}return k;
},add:function(o,p){this.__dr[o]=p;
var r=this._getDynamic();
for(var q in r){if(q.substring(0,q.indexOf(j))===o){r[q]=p+q.substring(o.length);
}}},remove:function(s){delete this.__dr[s];
},resolve:function(t){var u=this._getDynamic();

if(t!=null){t=this._preprocess(t);
}return u[t]||t;
},getAliases:function(){var v={};

for(var w in this.__dr){v[w]=this.__dr[w];
}return v;
}},destruct:function(){this.__dr=null;
}});
})();
(function(){var f="_applyTheme",e="qx.theme.manager.Font",d="_dynamic",c="Theme",b="changeTheme",a="singleton";
qx.Class.define(e,{type:a,extend:qx.util.ValueManager,properties:{theme:{check:c,nullable:true,apply:f,event:b}},members:{resolveDynamic:function(g){var h=this._dynamic;
return g instanceof qx.bom.Font?g:h[g];
},resolve:function(i){var l=this._dynamic;
var j=l[i];

if(j){return j;
}var k=this.getTheme();

if(k!==null&&k.fonts[i]){var m=this.__dt(k.fonts[i]);
return l[i]=(new m).set(k.fonts[i]);
}return i;
},isDynamic:function(n){var q=this._dynamic;

if(n&&(n instanceof qx.bom.Font||q[n]!==undefined)){return true;
}var p=this.getTheme();

if(p!==null&&n&&p.fonts[n]){var o=this.__dt(p.fonts[n]);
q[n]=(new o).set(p.fonts[n]);
return true;
}return false;
},__ds:function(r,s){if(r[s].include){var t=r[r[s].include];
r[s].include=null;
delete r[s].include;
r[s]=qx.lang.Object.mergeWith(r[s],t,false);
this.__ds(r,s);
}},_applyTheme:function(u){var v=this._getDynamic();

for(var y in v){if(v[y].themed){v[y].dispose();
delete v[y];
}}
if(u){var w=u.fonts;

for(var y in w){if(w[y].include&&w[w[y].include]){this.__ds(w,y);
}var x=this.__dt(w[y]);
v[y]=(new x).set(w[y]);
v[y].themed=true;
}}this._setDynamic(v);
},__dt:function(z){if(z.sources){return qx.bom.webfonts.WebFont;
}return qx.bom.Font;
}},destruct:function(){this._disposeMap(d);
}});
})();
(function(){var k="",j="underline",h="Boolean",g="px",f='"',e="italic",d="normal",c="bold",b="_applyItalic",a="_applyBold",z="Integer",y="_applyFamily",x="_applyLineHeight",w="Array",v="line-through",u="overline",t="Color",s="qx.bom.Font",r="Number",q="_applyDecoration",o=" ",p="_applySize",m=",",n="_applyColor";
qx.Class.define(s,{extend:qx.core.Object,construct:function(A,B){qx.core.Object.call(this);

if(A!==undefined){this.setSize(A);
}
if(B!==undefined){this.setFamily(B);
}},statics:{fromString:function(C){var G=new qx.bom.Font();
var E=C.split(/\s+/);
var name=[];
var F;

for(var i=0;i<E.length;i++){switch(F=E[i]){case c:G.setBold(true);
break;
case e:G.setItalic(true);
break;
case j:G.setDecoration(j);
break;
default:var D=parseInt(F,10);

if(D==F||qx.lang.String.contains(F,g)){G.setSize(D);
}else{name.push(F);
}break;
}}
if(name.length>0){G.setFamily(name);
}return G;
},fromConfig:function(H){var I=new qx.bom.Font;
I.set(H);
return I;
},__du:{fontFamily:k,fontSize:k,fontWeight:k,fontStyle:k,textDecoration:k,lineHeight:1.2,textColor:k},getDefaultStyles:function(){return this.__du;
}},properties:{size:{check:z,nullable:true,apply:p},lineHeight:{check:r,nullable:true,apply:x},family:{check:w,nullable:true,apply:y},bold:{check:h,nullable:true,apply:a},italic:{check:h,nullable:true,apply:b},decoration:{check:[j,v,u],nullable:true,apply:q},color:{check:t,nullable:true,apply:n}},members:{__dv:null,__dw:null,__dx:null,__dy:null,__dz:null,__dA:null,__dB:null,_applySize:function(J,K){this.__dv=J===null?null:J+g;
},_applyLineHeight:function(L,M){this.__dA=L===null?null:L;
},_applyFamily:function(N,O){var P=k;

for(var i=0,l=N.length;i<l;i++){if(N[i].indexOf(o)>0){P+=f+N[i]+f;
}else{P+=N[i];
}
if(i!==l-1){P+=m;
}}this.__dw=P;
},_applyBold:function(Q,R){this.__dx=Q===null?null:Q?c:d;
},_applyItalic:function(S,T){this.__dy=S===null?null:S?e:d;
},_applyDecoration:function(U,V){this.__dz=U===null?null:U;
},_applyColor:function(W,X){this.__dB=W===null?null:W;
},getStyles:function(){return {fontFamily:this.__dw,fontSize:this.__dv,fontWeight:this.__dx,fontStyle:this.__dy,textDecoration:this.__dz,lineHeight:this.__dA,textColor:this.__dB};
}}});
})();
(function(){var g="'",f="qx.bom.webfonts.WebFont",e="",d="changeStatus",c=" ",b="_applySources",a="qx.event.type.Data";
qx.Class.define(f,{extend:qx.bom.Font,events:{"changeStatus":a},properties:{sources:{nullable:true,apply:b}},members:{__dC:null,_applySources:function(h,j){var n=[];

for(var i=0,l=h.length;i<l;i++){var m=this._quoteFontFamily(h[i].family);
n.push(m);
var k=h[i].source;
qx.bom.webfonts.Manager.getInstance().require(m,k,this._onWebFontChangeStatus,this);
}this.setFamily(n.concat(this.getFamily()));
},_onWebFontChangeStatus:function(o){var p=o.getData();
this.fireDataEvent(d,p);
},_quoteFontFamily:function(q){q=q.replace(/["']/g,e);

if(q.indexOf(c)>0){q=g+q+g;
}return q;
}}});
})();
(function(){var n="",k="url('",h="ie",g="browser.name",f="changeStatus",e="svg",d="chrome",c="#",b="firefox",a="eot",T="ios",S="ttf",R="browser.version",Q="woff",P="m",O="os.name",N=")",M="qx.bom.webfonts.Manager",L="singleton",K=",\n",u="src: ",v="mobileSafari",s="'eot)",t="@font-face {",q="interval",r="}\n",o="font-family: ",p="mobile safari",w="safari",y="?#iefix') format('eot')",C=";\n",B="') format('woff')",E="opera",D="\.(",G="os.version",F="') format('svg')",A="'eot')",J="\nfont-style: normal;\nfont-weight: normal;",I="@font-face.*?",H=";",z="') format('truetype')";
qx.Class.define(M,{extend:qx.core.Object,type:L,construct:function(){qx.core.Object.call(this);
this.__dD=[];
this.__dE={};
this.__dF=[];
this.__dG=this.getPreferredFormats();
},statics:{FONT_FORMATS:["eot","woff","ttf","svg"],VALIDATION_TIMEOUT:5000},members:{__dD:null,__dH:null,__dE:null,__dG:null,__dF:null,__dI:null,require:function(U,V,W,X){var Y=[];

for(var i=0,l=V.length;i<l;i++){var bb=V[i].split(c);
var ba=qx.util.ResourceManager.getInstance().toUri(bb[0]);

if(bb.length>1){ba=ba+c+bb[1];
}Y.push(ba);
}if(!(qx.core.Environment.get(g)==h&&qx.bom.client.Browser.getVersion()<9)){this.__dJ(U,Y,W,X);
return;
}
if(!this.__dI){this.__dI=new qx.event.Timer(100);
this.__dI.addListener(q,this.__dK,this);
}
if(!this.__dI.isEnabled()){this.__dI.start();
}this.__dF.push([U,Y,W,X]);
},remove:function(bc){var bd=null;

for(var i=0,l=this.__dD.length;i<l;i++){if(this.__dD[i]==bc){bd=i;
this.__dQ(bc);
break;
}}
if(bd){qx.lang.Array.removeAt(this.__dD,bd);
}
if(bc in this.__dE){this.__dE[bc].dispose();
delete this.__dE[bc];
}},getPreferredFormats:function(){var be=[];
var bi=qx.core.Environment.get(g);
var bf=qx.core.Environment.get(R);
var bh=qx.core.Environment.get(O);
var bg=qx.core.Environment.get(G);

if((bi==h&&bf>=9)||(bi==b&&bf>=3.6)||(bi==d&&bf>=6)){be.push(Q);
}
if((bi==E&&bf>=10)||(bi==w&&bf>=3.1)||(bi==b&&bf>=3.5)||(bi==d&&bf>=4)||(bi==p&&bh==T&&bg>=4.2)){be.push(S);
}
if(bi==h&&bf>=4){be.push(a);
}
if(bi==v&&bh==T&&bg>=4.1){be.push(e);
}return be;
},removeStyleSheet:function(){this.__dD=[];

if(this.__dH){var bj=this.__dH.ownerNode?this.__dH.ownerNode:this.__dH.owningElement;
qx.dom.Element.removeChild(bj,bj.parentNode);
}this.__dH=null;
},__dJ:function(bk,bl,bm,bn){if(!qx.lang.Array.contains(this.__dD,bk)){var bq=this.__dM(bl);
var bp=this.__dN(bk,bq);

if(!bp){throw new Error("Couldn't create @font-face rule for WebFont "+bk+"!");
}
if(!this.__dH){this.__dH=qx.bom.Stylesheet.createElement();
}
try{this.__dP(bp);
}catch(br){}this.__dD.push(bk);
}
if(!this.__dE[bk]){this.__dE[bk]=new qx.bom.webfonts.Validator(bk);
this.__dE[bk].setTimeout(qx.bom.webfonts.Manager.VALIDATION_TIMEOUT);
this.__dE[bk].addListenerOnce(f,this.__dL,this);
}
if(bm){var bo=bn||window;
this.__dE[bk].addListenerOnce(f,bm,bo);
}this.__dE[bk].validate();
},__dK:function(){if(this.__dF.length==0){this.__dI.stop();
return;
}var bs=this.__dF.shift();
this.__dJ.apply(this,bs);
},__dL:function(bt){var bu=bt.getData();

if(bu.valid===false){qx.event.Timer.once(function(){this.remove(bu.family);
},this,250);
}},__dM:function(bv){var bx=qx.bom.webfonts.Manager.FONT_FORMATS;
var bA={};

for(var i=0,l=bv.length;i<l;i++){var by=null;

for(var x=0;x<bx.length;x++){var bz=new RegExp(D+bx[x]+N);
var bw=bz.exec(bv[i]);

if(bw){by=bw[1];
}}
if(by){bA[by]=bv[i];
}}return bA;
},__dN:function(bB,bC){var bF=[];
var bD=this.__dG.length>0?this.__dG:qx.bom.webfonts.Manager.FONT_FORMATS;

for(var i=0,l=bD.length;i<l;i++){var bE=bD[i];

if(bC[bE]){bF.push(this.__dO(bE,bC[bE]));
}}var bG=u+bF.join(K)+H;
bG=o+bB+C+bG;
bG=bG+J;
return bG;
},__dO:function(bH,bI){switch(bH){case a:return k+bI+y;
case Q:return k+bI+B;
case S:return k+bI+z;
case e:return k+bI+F;
default:return null;
}},__dP:function(bJ){var bL=t+bJ+r;

if(qx.core.Environment.get(g)==h&&qx.core.Environment.get(R)<9){var bK=this.__dR(this.__dH.cssText);
bK+=bL;
this.__dH.cssText=bK;
}else{this.__dH.insertRule(bL,this.__dH.cssRules.length);
}},__dQ:function(bM){var bP=new RegExp(I+bM,P);

for(var i=0,l=document.styleSheets.length;i<l;i++){var bN=document.styleSheets[i];

if(bN.cssText){var bO=bN.cssText.replace(/\n/g,n).replace(/\r/g,n);
bO=this.__dR(bO);

if(bP.exec(bO)){bO=bO.replace(bP,n);
}bN.cssText=bO;
}else if(bN.cssRules){for(var j=0,m=bN.cssRules.length;j<m;j++){var bO=bN.cssRules[j].cssText.replace(/\n/g,n).replace(/\r/g,n);

if(bP.exec(bO)){this.__dH.deleteRule(j);
return;
}}}}},__dR:function(bQ){return bQ.replace(s,A);
}},destruct:function(){delete this.__dD;
this.removeStyleSheet();

for(var bR in this.__dE){this.__dE[bR].dispose();
}qx.bom.webfonts.Validator.removeDefaultHelperElements();
}});
})();
(function(){var n="xhr",m="Microsoft.XMLHTTP",l="io.ssl",k="io.xhr",j="",i="file:",h="https:",g="webkit",f="gecko",e="activex",b="opera",d=".",c="io.maxrequests",a="qx.bom.client.Transport";
qx.Bootstrap.define(a,{statics:{getMaxConcurrentRequestCount:function(){var o;
var r=qx.bom.client.Engine.getVersion().split(d);
var p=0;
var s=0;
var q=0;
if(r[0]){p=r[0];
}if(r[1]){s=r[1];
}if(r[2]){q=r[2];
}if(window.maxConnectionsPerServer){o=window.maxConnectionsPerServer;
}else if(qx.bom.client.Engine.getName()==b){o=8;
}else if(qx.bom.client.Engine.getName()==g){o=4;
}else if(qx.bom.client.Engine.getName()==f&&((p>1)||((p==1)&&(s>9))||((p==1)&&(s==9)&&(q>=1)))){o=6;
}else{o=2;
}return o;
},getSsl:function(){return window.location.protocol===h;
},getXmlHttpRequest:function(){var t=window.ActiveXObject?(function(){if(window.location.protocol!==i){try{new window.XMLHttpRequest();
return n;
}catch(u){}}
try{new window.ActiveXObject(m);
return e;
}catch(v){}})():(function(){try{new window.XMLHttpRequest();
return n;
}catch(w){}})();
return t||j;
}},defer:function(x){qx.core.Environment.add(c,x.getMaxConcurrentRequestCount);
qx.core.Environment.add(l,x.getSsl);
qx.core.Environment.add(k,x.getXmlHttpRequest);
}});
})();
(function(){var p="",o="/",n="mshtml",m="engine.name",l="io.ssl",k="string",j="//",i="?",h="data",g="type",c="data:image/",f=";",e="encoding",b="qx.util.ResourceManager",a="singleton",d=",";
qx.Class.define(b,{extend:qx.core.Object,type:a,construct:function(){qx.core.Object.call(this);
},statics:{__o:qx.$$resources||{},__dS:{}},members:{has:function(q){return !!this.self(arguments).__o[q];
},getData:function(r){return this.self(arguments).__o[r]||null;
},getImageWidth:function(s){var t=this.self(arguments).__o[s];
return t?t[0]:null;
},getImageHeight:function(u){var v=this.self(arguments).__o[u];
return v?v[1]:null;
},getImageFormat:function(w){var x=this.self(arguments).__o[w];
return x?x[2]:null;
},getCombinedFormat:function(y){var B=p;
var A=this.self(arguments).__o[y];
var z=A&&A.length>4&&typeof (A[4])==k&&this.constructor.__o[A[4]];

if(z){var D=A[4];
var C=this.constructor.__o[D];
B=C[2];
}return B;
},toUri:function(E){if(E==null){return E;
}var F=this.self(arguments).__o[E];

if(!F){return E;
}
if(typeof F===k){var H=F;
}else{var H=F[3];
if(!H){return E;
}}var G=p;

if((qx.core.Environment.get(m)==n)&&qx.core.Environment.get(l)){G=this.self(arguments).__dS[H];
}return G+qx.$$libraries[H].resourceUri+o+E;
},toDataUri:function(I){var K=this.constructor.__o[I];
var L=this.constructor.__o[K[4]];
var M;

if(L){var J=L[4][I];
M=c+J[g]+f+J[e]+d+J[h];
}else{M=this.toUri(I);
}return M;
}},defer:function(N){if((qx.core.Environment.get(m)==n)){if(qx.core.Environment.get(l)){for(var R in qx.$$libraries){var P;

if(qx.$$libraries[R].resourceUri){P=qx.$$libraries[R].resourceUri;
}else{N.__dS[R]=p;
continue;
}if(P.match(/^\/\//)!=null){N.__dS[R]=window.location.protocol;
}else if(P.match(/^\//)!=null){N.__dS[R]=window.location.protocol+j+window.location.host;
}else if(P.match(/^\.\//)!=null){var O=document.URL;
N.__dS[R]=O.substring(0,O.lastIndexOf(o)+1);
}else if(P.match(/^http/)!=null){N.__dS[R]=p;
}else{var S=window.location.href.indexOf(i);
var Q;

if(S==-1){Q=window.location.href;
}else{Q=window.location.href.substring(0,S);
}N.__dS[R]=Q.substring(0,Q.lastIndexOf(o)+1);
}}}}}});
})();
(function(){var j="mshtml",i="msie",h=")(/| )([0-9]+\.[0-9])",g="",f="(",e="ce",d="CSS1Compat",c="android",b="operamini",a="browser.quirksmode",D="browser.name",C="mobile chrome",B="iemobile",A="prism|Fennec|Camino|Kmeleon|Galeon|Netscape|SeaMonkey|Namoroka|Firefox",z="opera mobi",y="Mobile Safari",x="operamobile",w="ie",v="mobile safari",u="IEMobile|Maxthon|MSIE",q="qx.bom.client.Browser",r="opera mini",o="browser.version",p="opera",m="Opera Mini|Opera Mobi|Opera",n="AdobeAIR|Titanium|Fluid|Chrome|Android|Epiphany|Konqueror|iCab|OmniWeb|Maxthon|Pre|Mobile Safari|Safari",k="webkit",l="browser.documentmode",s="5.0",t="Mobile/";
qx.Bootstrap.define(q,{statics:{getName:function(){var H=navigator.userAgent;
var G=new RegExp(f+qx.bom.client.Browser.__dT+h);
var F=H.match(G);

if(!F){return g;
}var name=F[1].toLowerCase();
var E=qx.bom.client.Engine.getName();

if(E===k){if(name===c){name=C;
}else if(H.indexOf(y)!==-1||H.indexOf(t)!==-1){name=v;
}}else if(E===j){if(name===i){name=w;
if(qx.bom.client.OperatingSystem.getVersion()===e){name=B;
}}}else if(E===p){if(name===z){name=x;
}else if(name===r){name=b;
}}return name;
},getVersion:function(){var L=navigator.userAgent;
var K=new RegExp(f+qx.bom.client.Browser.__dT+h);
var J=L.match(K);

if(!J){return g;
}var name=J[1].toLowerCase();
var I=J[3];
if(L.match(/Version(\/| )([0-9]+\.[0-9])/)){I=RegExp.$2;
}
if(qx.bom.client.Engine.getName()==j){I=qx.bom.client.Engine.getVersion();

if(name===i&&qx.bom.client.OperatingSystem.getVersion()==e){I=s;
}}return I;
},getDocumentMode:function(){if(document.documentMode){return document.documentMode;
}return 0;
},getQuirksMode:function(){if(qx.bom.client.Engine.getName()==j&&parseFloat(qx.bom.client.Engine.getVersion())>=8){return qx.bom.client.Engine.DOCUMENT_MODE===5;
}else{return document.compatMode!==d;
}},__dT:{"webkit":n,"gecko":A,"mshtml":u,"opera":m}[qx.bom.client.Engine.getName()]},defer:function(M){qx.core.Environment.add(D,M.getName),qx.core.Environment.add(o,M.getVersion),qx.core.Environment.add(l,M.getDocumentMode),qx.core.Environment.add(a,M.getQuirksMode);
}});
})();
(function(){var h="interval",g="qx.event.Timer",f="_applyInterval",d="_applyEnabled",c="Boolean",b="qx.event.type.Event",a="Integer";
qx.Class.define(g,{extend:qx.core.Object,construct:function(i){qx.core.Object.call(this);
this.setEnabled(false);

if(i!=null){this.setInterval(i);
}var self=this;
this.__dU=function(){self._oninterval.call(self);
};
},events:{"interval":b},statics:{once:function(j,k,l){var m=new qx.event.Timer(l);
m.__dV=j;
m.addListener(h,function(e){m.stop();
j.call(k,e);
m.dispose();
k=null;
},k);
m.start();
return m;
}},properties:{enabled:{init:true,check:c,apply:d},interval:{check:a,init:1000,apply:f}},members:{__dW:null,__dU:null,_applyInterval:function(n,o){if(this.getEnabled()){this.restart();
}},_applyEnabled:function(p,q){if(q){window.clearInterval(this.__dW);
this.__dW=null;
}else if(p){this.__dW=window.setInterval(this.__dU,this.getInterval());
}},start:function(){this.setEnabled(true);
},startWith:function(r){this.setInterval(r);
this.start();
},stop:function(){this.setEnabled(false);
},restart:function(){this.stop();
this.start();
},restartWith:function(s){this.stop();
this.startWith(s);
},_oninterval:qx.event.GlobalError.observeMethod(function(){if(this.$$disposed){return;
}
if(this.getEnabled()){this.fireEvent(h);
}})},destruct:function(){if(this.__dW){window.clearInterval(this.__dW);
}this.__dW=this.__dU=null;
}});
})();
(function(){var a="qx.dom.Element";
qx.Class.define(a,{statics:{hasChild:function(parent,b){return b.parentNode===parent;
},hasChildren:function(c){return !!c.firstChild;
},hasChildElements:function(d){d=d.firstChild;

while(d){if(d.nodeType===1){return true;
}d=d.nextSibling;
}return false;
},getParentElement:function(e){return e.parentNode;
},isInDom:function(f,g){if(!g){g=window;
}var h=g.document.getElementsByTagName(f.nodeName);

for(var i=0,l=h.length;i<l;i++){if(h[i]===f){return true;
}}return false;
},insertAt:function(j,parent,k){var m=parent.childNodes[k];

if(m){parent.insertBefore(j,m);
}else{parent.appendChild(j);
}return true;
},insertBegin:function(n,parent){if(parent.firstChild){this.insertBefore(n,parent.firstChild);
}else{parent.appendChild(n);
}},insertEnd:function(o,parent){parent.appendChild(o);
},insertBefore:function(p,q){q.parentNode.insertBefore(p,q);
return true;
},insertAfter:function(r,s){var parent=s.parentNode;

if(s==parent.lastChild){parent.appendChild(r);
}else{return this.insertBefore(r,s.nextSibling);
}return true;
},remove:function(t){if(!t.parentNode){return false;
}t.parentNode.removeChild(t);
return true;
},removeChild:function(u,parent){if(u.parentNode!==parent){return false;
}parent.removeChild(u);
return true;
},removeChildAt:function(v,parent){var w=parent.childNodes[v];

if(!w){return false;
}parent.removeChild(w);
return true;
},replaceChild:function(x,y){if(!y.parentNode){return false;
}y.parentNode.replaceChild(x,y);
return true;
},replaceAt:function(z,A,parent){var B=parent.childNodes[A];

if(!B){return false;
}parent.replaceChild(z,B);
return true;
}}});
})();
(function(){var l="engine.name",k="head",j="text/css",h="stylesheet",g="}",f='@import "',e="{",d='";',c="qx.bom.Stylesheet",b="link",a="style";
qx.Class.define(c,{statics:{includeFile:function(m,n){if(!n){n=document;
}var o=n.createElement(b);
o.type=j;
o.rel=h;
o.href=qx.util.ResourceManager.getInstance().toUri(m);
var p=n.getElementsByTagName(k)[0];
p.appendChild(o);
},createElement:qx.core.Environment.select(l,{"mshtml":function(q){var r=document.createStyleSheet();

if(q){r.cssText=q;
}return r;
},"default":function(s){var t=document.createElement(a);
t.type=j;

if(s){t.appendChild(document.createTextNode(s));
}document.getElementsByTagName(k)[0].appendChild(t);
return t.sheet;
}}),addRule:qx.core.Environment.select(l,{"mshtml":function(u,v,w){u.addRule(v,w);
},"default":function(x,y,z){x.insertRule(y+e+z+g,x.cssRules.length);
}}),removeRule:qx.core.Environment.select(l,{"mshtml":function(A,B){var C=A.rules;
var D=C.length;

for(var i=D-1;i>=0;--i){if(C[i].selectorText==B){A.removeRule(i);
}}},"default":function(E,F){var G=E.cssRules;
var H=G.length;

for(var i=H-1;i>=0;--i){if(G[i].selectorText==F){E.deleteRule(i);
}}}}),removeAllRules:qx.core.Environment.select(l,{"mshtml":function(I){var J=I.rules;
var K=J.length;

for(var i=K-1;i>=0;i--){I.removeRule(i);
}},"default":function(L){var M=L.cssRules;
var N=M.length;

for(var i=N-1;i>=0;i--){L.deleteRule(i);
}}}),addImport:qx.core.Environment.select(l,{"mshtml":function(O,P){O.addImport(P);
},"default":function(Q,R){Q.insertRule(f+R+d,Q.cssRules.length);
}}),removeImport:qx.core.Environment.select(l,{"mshtml":function(S,T){var U=S.imports;
var V=U.length;

for(var i=V-1;i>=0;i--){if(U[i].href==T){S.removeImport(i);
}}},"default":function(W,X){var Y=W.cssRules;
var ba=Y.length;

for(var i=ba-1;i>=0;i--){if(Y[i].href==X){W.deleteRule(i);
}}}}),removeAllImports:qx.core.Environment.select(l,{"mshtml":function(bb){var bc=bb.imports;
var bd=bc.length;

for(var i=bd-1;i>=0;i--){bb.removeImport(i);
}},"default":function(be){var bf=be.cssRules;
var bg=bf.length;

for(var i=bg-1;i>=0;i--){if(bf[i].type==bf[i].IMPORT_RULE){be.deleteRule(i);
}}}})}});
})();
(function(){var h=",",g="interval",f="changeStatus",e="qx.event.type.Data",d="qx.bom.webfonts.Validator",c="_applyFontFamily",b="span",a="Integer";
qx.Class.define(d,{extend:qx.core.Object,construct:function(i){qx.core.Object.call(this);

if(i){this.setFontFamily(i);
}this.__dX=this._getRequestedHelpers();
},statics:{COMPARISON_FONTS:{sans:["Arial","Helvetica","sans-serif"],serif:["Times New Roman","Georgia","serif"]},HELPER_CSS:{position:"absolute",margin:"0",padding:"0",top:"-1000px",left:"-1000px",fontSize:"350px",width:"auto",height:"auto",lineHeight:"normal",fontVariant:"normal"},COMPARISON_STRING:"WEei",__dY:null,__ea:null,removeDefaultHelperElements:function(){var j=qx.bom.webfonts.Validator.__ea;

if(j){for(var k in j){document.body.removeChild(j[k]);
}}delete qx.bom.webfonts.Validator.__ea;
}},properties:{fontFamily:{nullable:true,init:null,apply:c},timeout:{check:a,init:5000}},events:{"changeStatus":e},members:{__dX:null,__eb:null,__ec:null,validate:function(){this.__ec=new Date().getTime();

if(this.__eb){this.__eb.restart();
}else{this.__eb=new qx.event.Timer(100);
this.__eb.addListener(g,this.__ed,this);
qx.event.Timer.once(function(){this.__eb.start();
},this,0);
}},_reset:function(){if(this.__dX){for(var m in this.__dX){var l=this.__dX[m];
document.body.removeChild(l);
}this.__dX=null;
}},_isFontValid:function(){if(!qx.bom.webfonts.Validator.__dY){this.__bf();
}
if(!this.__dX){this.__dX=this._getRequestedHelpers();
}var o=qx.bom.element.Dimension.getWidth(this.__dX.sans);
var n=qx.bom.element.Dimension.getWidth(this.__dX.serif);
var p=qx.bom.webfonts.Validator;

if(o!==p.__dY.sans&&n!==p.__dY.serif){return true;
}return false;
},_getRequestedHelpers:function(){var q=[this.getFontFamily()].concat(qx.bom.webfonts.Validator.COMPARISON_FONTS.sans);
var r=[this.getFontFamily()].concat(qx.bom.webfonts.Validator.COMPARISON_FONTS.serif);
return {sans:this._getHelperElement(q),serif:this._getHelperElement(r)};
},_getHelperElement:function(s){var t=qx.lang.Object.clone(qx.bom.webfonts.Validator.HELPER_CSS);

if(s){if(t.fontFamily){t.fontFamily+=h+s.join(h);
}else{t.fontFamily=s.join(h);
}}var u=document.createElement(b);
u.innerHTML=qx.bom.webfonts.Validator.COMPARISON_STRING;
qx.bom.element.Style.setStyles(u,t);
document.body.appendChild(u);
return u;
},_applyFontFamily:function(v,w){if(v!==w){this._reset();
}},__bf:function(){var x=qx.bom.webfonts.Validator;

if(!x.__ea){x.__ea={sans:this._getHelperElement(x.COMPARISON_FONTS.sans),serif:this._getHelperElement(x.COMPARISON_FONTS.serif)};
}x.__dY={sans:qx.bom.element.Dimension.getWidth(x.__ea.sans),serif:qx.bom.element.Dimension.getWidth(x.__ea.serif)};
},__ed:function(){if(this._isFontValid()){this.__eb.stop();
this._reset();
this.fireDataEvent(f,{family:this.getFontFamily(),valid:true});
}else{var y=new Date().getTime();

if(y-this.__ec>=this.getTimeout()){this.__eb.stop();
this._reset();
this.fireDataEvent(f,{family:this.getFontFamily(),valid:false});
}}}},destruct:function(){this._reset();
this.__eb.stop();
this.__eb.removeListener(g,this.__ed,this);
this._disposeObjects(this.__eb);
}});
})();
(function(){var j="engine.name",i="0px",h="mshtml",g="engine.version",f="qx.bom.element.Dimension",e="paddingRight",d="paddingLeft",c="opera",b="paddingBottom",a="paddingTop";
qx.Class.define(f,{statics:{getWidth:qx.core.Environment.select(j,{"gecko":function(k){if(k.getBoundingClientRect){var l=k.getBoundingClientRect();
return Math.round(l.right)-Math.round(l.left);
}else{return k.offsetWidth;
}},"default":function(m){return m.offsetWidth;
}}),getHeight:qx.core.Environment.select(j,{"gecko":function(n){if(n.getBoundingClientRect){var o=n.getBoundingClientRect();
return Math.round(o.bottom)-Math.round(o.top);
}else{return n.offsetHeight;
}},"default":function(p){return p.offsetHeight;
}}),getSize:function(q){return {width:this.getWidth(q),height:this.getHeight(q)};
},__ee:{visible:true,hidden:true},getContentWidth:function(r){var s=qx.bom.element.Style;
var t=qx.bom.element.Overflow.getX(r);
var u=parseInt(s.get(r,d)||i,10);
var x=parseInt(s.get(r,e)||i,10);

if(this.__ee[t]){var w=r.clientWidth;

if((qx.core.Environment.get(j)==c)){w=w-u-x;
}else{if(qx.dom.Node.isBlockNode(r)){w=w-u-x;
}}return w;
}else{if(r.clientWidth>=r.scrollWidth){return Math.max(r.clientWidth,r.scrollWidth)-u-x;
}else{var v=r.scrollWidth-u;
if(qx.core.Environment.get(j)==h&&qx.core.Environment.get(g)>=6){v-=x;
}return v;
}}},getContentHeight:function(y){var z=qx.bom.element.Style;
var C=qx.bom.element.Overflow.getY(y);
var B=parseInt(z.get(y,a)||i,10);
var A=parseInt(z.get(y,b)||i,10);

if(this.__ee[C]){return y.clientHeight-B-A;
}else{if(y.clientHeight>=y.scrollHeight){return Math.max(y.clientHeight,y.scrollHeight)-B-A;
}else{var D=y.scrollHeight-B;
if(qx.core.Environment.get(j)==h&&qx.core.Environment.get(g)==6){D-=A;
}return D;
}}},getContentSize:function(E){return {width:this.getContentWidth(E),height:this.getContentHeight(E)};
}}});
})();
(function(){var e="qx.theme.manager.Icon",d="Theme",c="changeTheme",b="_applyTheme",a="singleton";
qx.Class.define(e,{type:a,extend:qx.core.Object,properties:{theme:{check:d,nullable:true,apply:b,event:c}},members:{_applyTheme:function(f,g){var i=qx.util.AliasManager.getInstance();

if(g){for(var h in g.aliases){i.remove(h);
}}
if(f){for(var h in f.aliases){i.add(h,f.aliases[h]);
}}}}});
})();
(function(){var h="string",g="_applyTheme",f="qx.theme.manager.Appearance",e=":",d="Theme",c="changeTheme",b="/",a="singleton";
qx.Class.define(f,{type:a,extend:qx.core.Object,construct:function(){qx.core.Object.call(this);
this.__ef={};
this.__eg={};
},properties:{theme:{check:d,nullable:true,event:c,apply:g}},members:{__eh:{},__ef:null,__eg:null,_applyTheme:function(j,k){this.__eg={};
this.__ef={};
},__ei:function(l,m,n){var s=m.appearances;
var v=s[l];

if(!v){var w=b;
var p=[];
var u=l.split(w);
var t;

while(!v&&u.length>0){p.unshift(u.pop());
var q=u.join(w);
v=s[q];

if(v){t=v.alias||v;

if(typeof t===h){var r=t+w+p.join(w);
return this.__ei(r,m,n);
}}}for(var i=0;i<p.length-1;i++){p.shift();
var q=p.join(w);
var o=this.__ei(q,m);

if(o){return o;
}}if(n!=null){return this.__ei(n,m);
}return null;
}else if(typeof v===h){return this.__ei(v,m,n);
}else if(v.include&&!v.style){return this.__ei(v.include,m,n);
}return l;
},styleFrom:function(x,y,z,A){if(!z){z=this.getTheme();
}var F=this.__eg;
var B=F[x];

if(!B){B=F[x]=this.__ei(x,z,A);
}var L=z.appearances[B];

if(!L){this.warn("Missing appearance: "+x);
return null;
}if(!L.style){return null;
}var M=B;

if(y){var N=L.$$bits;

if(!N){N=L.$$bits={};
L.$$length=0;
}var D=0;

for(var H in y){if(!y[H]){continue;
}
if(N[H]==null){N[H]=1<<L.$$length++;
}D+=N[H];
}if(D>0){M+=e+D;
}}var E=this.__ef;

if(E[M]!==undefined){return E[M];
}if(!y){y=this.__eh;
}var J;
if(L.include||L.base){var C;

if(L.include){C=this.styleFrom(L.include,y,z,A);
}var G=L.style(y,C);
J={};
if(L.base){var I=this.styleFrom(B,y,L.base,A);

if(L.include){for(var K in I){if(!C.hasOwnProperty(K)&&!G.hasOwnProperty(K)){J[K]=I[K];
}}}else{for(var K in I){if(!G.hasOwnProperty(K)){J[K]=I[K];
}}}}if(L.include){for(var K in C){if(!G.hasOwnProperty(K)){J[K]=C[K];
}}}for(var K in G){J[K]=G[K];
}}else{J=L.style(y);
}return E[M]=J||null;
}},destruct:function(){this.__ef=this.__eg=null;
}});
})();
(function(){var p="other",o="widgets",n="fonts",m="appearances",k="qx.Theme",j="]",h="[Theme ",g="colors",f="decorations",e="Theme",b="meta",d="borders",c="icons";
qx.Bootstrap.define(k,{statics:{define:function(name,q){if(!q){var q={};
}q.include=this.__ej(q.include);
q.patch=this.__ej(q.patch);
var r={$$type:e,name:name,title:q.title,toString:this.genericToString};
if(q.extend){r.supertheme=q.extend;
}r.basename=qx.Bootstrap.createNamespace(name,r);
this.__em(r,q);
this.__ek(r,q);
this.$$registry[name]=r;
for(var i=0,a=q.include,l=a.length;i<l;i++){this.include(r,a[i]);
}
for(var i=0,a=q.patch,l=a.length;i<l;i++){this.patch(r,a[i]);
}},__ej:function(s){if(!s){return [];
}
if(qx.Bootstrap.isArray(s)){return s;
}else{return [s];
}},__ek:function(t,u){var v=u.aliases||{};

if(u.extend&&u.extend.aliases){qx.Bootstrap.objectMergeWith(v,u.extend.aliases,false);
}t.aliases=v;
},getAll:function(){return this.$$registry;
},getByName:function(name){return this.$$registry[name];
},isDefined:function(name){return this.getByName(name)!==undefined;
},getTotalNumber:function(){return qx.Bootstrap.objectGetLength(this.$$registry);
},genericToString:function(){return h+this.name+j;
},__el:function(w){for(var i=0,x=this.__en,l=x.length;i<l;i++){if(w[x[i]]){return x[i];
}}},__em:function(y,z){var C=this.__el(z);
if(z.extend&&!C){C=z.extend.type;
}y.type=C||p;
var E=function(){};
if(z.extend){E.prototype=new z.extend.$$clazz;
}var D=E.prototype;
var B=z[C];
for(var A in B){D[A]=B[A];
if(D[A].base){D[A].base=z.extend;
}}y.$$clazz=E;
y[C]=new E;
},$$registry:{},__en:[g,d,f,n,c,o,m,b],__h:null,__eo:null,__i:function(){},patch:function(F,G){var I=this.__el(G);

if(I!==this.__el(F)){throw new Error("The mixins '"+F.name+"' are not compatible '"+G.name+"'!");
}var H=G[I];
var J=F.$$clazz.prototype;

for(var K in H){J[K]=H[K];
}},include:function(L,M){var O=M.type;

if(O!==L.type){throw new Error("The mixins '"+L.name+"' are not compatible '"+M.name+"'!");
}var N=M[O];
var P=L.$$clazz.prototype;

for(var Q in N){if(P[Q]!==undefined){continue;
}P[Q]=N[Q];
}}}});
})();
(function(){var p="Boolean",o="focusout",n="interval",m="mouseover",l="mouseout",k="mousemove",j="widget",i="qx.ui.tooltip.ToolTip",h="__eq",g="__es",c="_applyCurrent",f="qx.ui.tooltip.Manager",d="tooltip-error",b="singleton",a="__ep";
qx.Class.define(f,{type:b,extend:qx.core.Object,construct:function(){qx.core.Object.call(this);
qx.event.Registration.addListener(document.body,m,this.__ez,this,true);
this.__ep=new qx.event.Timer();
this.__ep.addListener(n,this.__ew,this);
this.__eq=new qx.event.Timer();
this.__eq.addListener(n,this.__ex,this);
this.__er={left:0,top:0};
},properties:{current:{check:i,nullable:true,apply:c},showInvalidToolTips:{check:p,init:true},showToolTips:{check:p,init:true}},members:{__er:null,__eq:null,__ep:null,__es:null,__et:null,__eu:function(){if(!this.__es){this.__es=new qx.ui.tooltip.ToolTip().set({rich:true});
}return this.__es;
},__ev:function(){if(!this.__et){this.__et=new qx.ui.tooltip.ToolTip().set({appearance:d});
this.__et.syncAppearance();
}return this.__et;
},_applyCurrent:function(q,r){if(r&&qx.ui.core.Widget.contains(r,q)){return;
}if(r){if(!r.isDisposed()){r.exclude();
}this.__ep.stop();
this.__eq.stop();
}var t=qx.event.Registration;
var s=document.body;
if(q){this.__ep.startWith(q.getShowTimeout());
t.addListener(s,l,this.__eA,this,true);
t.addListener(s,o,this.__eB,this,true);
t.addListener(s,k,this.__ey,this,true);
}else{t.removeListener(s,l,this.__eA,this,true);
t.removeListener(s,o,this.__eB,this,true);
t.removeListener(s,k,this.__ey,this,true);
}},__ew:function(e){var u=this.getCurrent();

if(u&&!u.isDisposed()){this.__eq.startWith(u.getHideTimeout());

if(u.getPlaceMethod()==j){u.placeToWidget(u.getOpener());
}else{u.placeToPoint(this.__er);
}u.show();
}this.__ep.stop();
},__ex:function(e){var v=this.getCurrent();

if(v&&!v.isDisposed()){v.exclude();
}this.__eq.stop();
this.resetCurrent();
},__ey:function(e){var w=this.__er;
w.left=e.getDocumentLeft();
w.top=e.getDocumentTop();
},__ez:function(e){var z=qx.ui.core.Widget.getWidgetByElement(e.getTarget());

if(!z){return;
}var A,B,y,x;
while(z!=null){A=z.getToolTip();
B=z.getToolTipText()||null;
y=z.getToolTipIcon()||null;

if(qx.Class.hasInterface(z.constructor,qx.ui.form.IForm)&&!z.isValid()){x=z.getInvalidMessage();
}
if(A||B||y||x){break;
}z=z.getLayoutParent();
}if(!z||!z.getEnabled()||z.isBlockToolTip()||(!x&&!this.getShowToolTips())||(x&&!this.getShowInvalidToolTips())){return;
}
if(x){A=this.__ev().set({label:x});
}
if(!A){A=this.__eu().set({label:B,icon:y});
}this.setCurrent(A);
A.setOpener(z);
},__eA:function(e){var C=qx.ui.core.Widget.getWidgetByElement(e.getTarget());

if(!C){return;
}var D=qx.ui.core.Widget.getWidgetByElement(e.getRelatedTarget());

if(!D){return;
}var E=this.getCurrent();
if(E&&(D==E||qx.ui.core.Widget.contains(E,D))){return;
}if(D&&C&&qx.ui.core.Widget.contains(C,D)){return;
}if(E&&!D){this.setCurrent(null);
}else{this.resetCurrent();
}},__eB:function(e){var F=qx.ui.core.Widget.getWidgetByElement(e.getTarget());

if(!F){return;
}var G=this.getCurrent();
if(G&&G==F.getToolTip()){this.setCurrent(null);
}}},destruct:function(){qx.event.Registration.removeListener(document.body,m,this.__ez,this,true);
this._disposeObjects(a,h,g);
this.__er=null;
}});
})();
(function(){var a="qx.ui.core.MChildrenHandling";
qx.Mixin.define(a,{members:{getChildren:function(){return this._getChildren();
},hasChildren:function(){return this._hasChildren();
},indexOf:function(b){return this._indexOf(b);
},add:function(c,d){this._add(c,d);
},addAt:function(e,f,g){this._addAt(e,f,g);
},addBefore:function(h,i,j){this._addBefore(h,i,j);
},addAfter:function(k,l,m){this._addAfter(k,l,m);
},remove:function(n){this._remove(n);
},removeAt:function(o){return this._removeAt(o);
},removeAll:function(){return this._removeAll();
}},statics:{remap:function(p){p.getChildren=p._getChildren;
p.hasChildren=p._hasChildren;
p.indexOf=p._indexOf;
p.add=p._add;
p.addAt=p._addAt;
p.addBefore=p._addBefore;
p.addAfter=p._addAfter;
p.remove=p._remove;
p.removeAt=p._removeAt;
p.removeAll=p._removeAll;
}}});
})();
(function(){var a="qx.ui.core.MLayoutHandling";
qx.Mixin.define(a,{members:{setLayout:function(b){return this._setLayout(b);
},getLayout:function(){return this._getLayout();
}},statics:{remap:function(c){c.getLayout=c._getLayout;
c.setLayout=c._setLayout;
}}});
})();
(function(){var b="qx.ui.core.DecoratorFactory",a="$$nopool$$";
qx.Class.define(b,{extend:qx.core.Object,construct:function(){qx.core.Object.call(this);
this.__cL={};
},statics:{MAX_SIZE:15,__eC:a},members:{__cL:null,getDecoratorElement:function(c){var h=qx.ui.core.DecoratorFactory;

if(qx.lang.Type.isString(c)){var f=c;
var e=qx.theme.manager.Decoration.getInstance().resolve(c);
}else{var f=h.__eC;
e=c;
}var g=this.__cL;

if(g[f]&&g[f].length>0){var d=g[f].pop();
}else{var d=this._createDecoratorElement(e,f);
}d.$$pooled=false;
return d;
},poolDecorator:function(i){if(!i||i.$$pooled||i.isDisposed()){return;
}var l=qx.ui.core.DecoratorFactory;
var j=i.getId();

if(j==l.__eC){i.dispose();
return;
}var k=this.__cL;

if(!k[j]){k[j]=[];
}
if(k[j].length>l.MAX_SIZE){i.dispose();
}else{i.$$pooled=true;
k[j].push(i);
}},_createDecoratorElement:function(m,n){var o=new qx.html.Decorator(m,n);
return o;
},toString:function(){return qx.core.Object.prototype.toString.call(this);
}},destruct:function(){if(!qx.core.ObjectRegistry.inShutDown){var q=this.__cL;

for(var p in q){qx.util.DisposeUtil.disposeArray(q,p);
}}this.__cL=null;
}});
})();
(function(){var b="qx.util.DeferredCallManager",a="singleton";
qx.Class.define(b,{extend:qx.core.Object,type:a,construct:function(){this.__eD={};
this.__eE=qx.lang.Function.bind(this.__eI,this);
this.__eF=false;
},members:{__eG:null,__eH:null,__eD:null,__eF:null,__eE:null,schedule:function(c){if(this.__eG==null){this.__eG=window.setTimeout(this.__eE,0);
}var d=c.toHashCode();
if(this.__eH&&this.__eH[d]){return;
}this.__eD[d]=c;
this.__eF=true;
},cancel:function(e){var f=e.toHashCode();
if(this.__eH&&this.__eH[f]){this.__eH[f]=null;
return;
}delete this.__eD[f];
if(qx.lang.Object.isEmpty(this.__eD)&&this.__eG!=null){window.clearTimeout(this.__eG);
this.__eG=null;
}},__eI:qx.event.GlobalError.observeMethod(function(){this.__eG=null;
while(this.__eF){this.__eH=qx.lang.Object.clone(this.__eD);
this.__eD={};
this.__eF=false;

for(var h in this.__eH){var g=this.__eH[h];

if(g){this.__eH[h]=null;
g.call();
}}}this.__eH=null;
})},destruct:function(){if(this.__eG!=null){window.clearTimeout(this.__eG);
}this.__eE=this.__eD=null;
}});
})();
(function(){var a="qx.util.DeferredCall";
qx.Class.define(a,{extend:qx.core.Object,construct:function(b,c){qx.core.Object.call(this);
this.__bC=b;
this.__bD=c||null;
this.__eJ=qx.util.DeferredCallManager.getInstance();
},members:{__bC:null,__bD:null,__eJ:null,cancel:function(){this.__eJ.cancel(this);
},schedule:function(){this.__eJ.schedule(this);
},call:function(){var d;
this.__bD?this.__bC.apply(this.__bD):this.__bC();
}},destruct:function(){this.cancel();
this.__bD=this.__bC=this.__eJ=null;
}});
})();
(function(){var m="element",k="qxSelectable",j="off",h="engine.name",g="on",f="text",d="div",c="",b="mshtml",a="none",F="scroll",E="qx.html.Element",D="|capture|",C="activate",B="blur",A="deactivate",z="capture",w="userSelect",v="-moz-none",u="visible",s="releaseCapture",t="|bubble|",q="tabIndex",r="focus",o="MozUserSelect",p="hidden",n="__fg";
qx.Class.define(E,{extend:qx.core.Object,construct:function(G,H,I){qx.core.Object.call(this);
this.__eK=G||d;
this.__eL=H||null;
this.__eM=I||null;
},statics:{DEBUG:false,_modified:{},_visibility:{},_scroll:{},_actions:[],__eN:{},_scheduleFlush:function(J){qx.html.Element.__fr.schedule();
},flush:function(){var U;
var M=this.__eO();
var L=M.getFocus();

if(L&&this.__eS(L)){M.blur(L);
}var bc=M.getActive();

if(bc&&this.__eS(bc)){qx.bom.Element.deactivate(bc);
}var P=this.__eQ();

if(P&&this.__eS(P)){qx.bom.Element.releaseCapture(P);
}var V=[];
var W=this._modified;

for(var T in W){U=W[T];
if(U.__fk()){if(U.__eT&&qx.dom.Hierarchy.isRendered(U.__eT)){V.push(U);
}else{U.__fj();
}delete W[T];
}}
for(var i=0,l=V.length;i<l;i++){U=V[i];
U.__fj();
}var R=this._visibility;

for(var T in R){U=R[T];
var X=U.__eT;

if(!X){delete R[T];
continue;
}if(!U.$$disposed){X.style.display=U.__eV?c:a;
if((qx.core.Environment.get(h)==b)){if(!(document.documentMode>=8)){X.style.visibility=U.__eV?u:p;
}}}delete R[T];
}var scroll=this._scroll;

for(var T in scroll){U=scroll[T];
var bd=U.__eT;

if(bd&&bd.offsetWidth){var O=true;
if(U.__eY!=null){U.__eT.scrollLeft=U.__eY;
delete U.__eY;
}if(U.__fa!=null){U.__eT.scrollTop=U.__fa;
delete U.__fa;
}var Y=U.__eW;

if(Y!=null){var S=Y.element.getDomElement();

if(S&&S.offsetWidth){qx.bom.element.Scroll.intoViewX(S,bd,Y.align);
delete U.__eW;
}else{O=false;
}}var ba=U.__eX;

if(ba!=null){var S=ba.element.getDomElement();

if(S&&S.offsetWidth){qx.bom.element.Scroll.intoViewY(S,bd,ba.align);
delete U.__eX;
}else{O=false;
}}if(O){delete scroll[T];
}}}var N={"releaseCapture":1,"blur":1,"deactivate":1};
for(var i=0;i<this._actions.length;i++){var bb=this._actions[i];
var X=bb.element.__eT;

if(!X||!N[bb.type]&&!bb.element.__fk()){continue;
}var Q=bb.args;
Q.unshift(X);
qx.bom.Element[bb.type].apply(qx.bom.Element,Q);
}this._actions=[];
for(var T in this.__eN){var K=this.__eN[T];
var bd=K.element.__eT;

if(bd){qx.bom.Selection.set(bd,K.start,K.end);
delete this.__eN[T];
}}qx.event.handler.Appear.refresh();
},__eO:function(){if(!this.__eP){var be=qx.event.Registration.getManager(window);
this.__eP=be.getHandler(qx.event.handler.Focus);
}return this.__eP;
},__eQ:function(){if(!this.__eR){var bf=qx.event.Registration.getManager(window);
this.__eR=bf.getDispatcher(qx.event.dispatch.MouseCapture);
}return this.__eR.getCaptureElement();
},__eS:function(bg){var bh=qx.core.ObjectRegistry.fromHashCode(bg.$$element);
return bh&&!bh.__fk();
}},members:{__eK:null,__eT:null,__cX:false,__eU:true,__eV:true,__eW:null,__eX:null,__eY:null,__fa:null,__fb:null,__fc:null,__fd:null,__eL:null,__eM:null,__fe:null,__ff:null,__fg:null,__fh:null,__fi:null,_scheduleChildrenUpdate:function(){if(this.__fh){return;
}this.__fh=true;
qx.html.Element._modified[this.$$hash]=this;
qx.html.Element._scheduleFlush(m);
},_createDomElement:function(){return qx.bom.Element.create(this.__eK);
},__fj:function(){var length;
var bi=this.__fg;

if(bi){length=bi.length;
var bj;

for(var i=0;i<length;i++){bj=bi[i];

if(bj.__eV&&bj.__eU&&!bj.__eT){bj.__fj();
}}}
if(!this.__eT){this.__eT=this._createDomElement();
this.__eT.$$element=this.$$hash;
this._copyData(false);

if(bi&&length>0){this._insertChildren();
}}else{this._syncData();

if(this.__fh){this._syncChildren();
}}delete this.__fh;
},_insertChildren:function(){var bk=this.__fg;
var length=bk.length;
var bm;

if(length>2){var bl=document.createDocumentFragment();

for(var i=0;i<length;i++){bm=bk[i];

if(bm.__eT&&bm.__eU){bl.appendChild(bm.__eT);
}}this.__eT.appendChild(bl);
}else{var bl=this.__eT;

for(var i=0;i<length;i++){bm=bk[i];

if(bm.__eT&&bm.__eU){bl.appendChild(bm.__eT);
}}}},_syncChildren:function(){var br;
var bw=qx.core.ObjectRegistry;
var bn=this.__fg;
var bu=bn.length;
var bo;
var bs;
var bq=this.__eT;
var bt=bq.childNodes;
var bp=0;
var bv;
for(var i=bt.length-1;i>=0;i--){bv=bt[i];
bs=bw.fromHashCode(bv.$$element);

if(!bs||!bs.__eU||bs.__fi!==this){bq.removeChild(bv);
}}for(var i=0;i<bu;i++){bo=bn[i];
if(bo.__eU){bs=bo.__eT;
bv=bt[bp];

if(!bs){continue;
}if(bs!=bv){if(bv){bq.insertBefore(bs,bv);
}else{bq.appendChild(bs);
}}bp++;
}}},_copyData:function(bx){var bB=this.__eT;
var bA=this.__eM;

if(bA){var by=qx.bom.element.Attribute;

for(var bC in bA){by.set(bB,bC,bA[bC]);
}}var bA=this.__eL;

if(bA){var bz=qx.bom.element.Style;

if(bx){bz.setStyles(bB,bA);
}else{bz.setCss(bB,bz.compile(bA));
}}var bA=this.__fe;

if(bA){for(var bC in bA){this._applyProperty(bC,bA[bC]);
}}var bA=this.__ff;

if(bA){qx.event.Registration.getManager(bB).importListeners(bB,bA);
delete this.__ff;
}},_syncData:function(){var bH=this.__eT;
var bG=qx.bom.element.Attribute;
var bE=qx.bom.element.Style;
var bF=this.__fc;

if(bF){var bK=this.__eM;

if(bK){var bI;

for(var bJ in bF){bI=bK[bJ];

if(bI!==undefined){bG.set(bH,bJ,bI);
}else{bG.reset(bH,bJ);
}}}this.__fc=null;
}var bF=this.__fb;

if(bF){var bK=this.__eL;

if(bK){var bD={};

for(var bJ in bF){bD[bJ]=bK[bJ];
}bE.setStyles(bH,bD);
}this.__fb=null;
}var bF=this.__fd;

if(bF){var bK=this.__fe;

if(bK){var bI;

for(var bJ in bF){this._applyProperty(bJ,bK[bJ]);
}}this.__fd=null;
}},__fk:function(){var bL=this;
while(bL){if(bL.__cX){return true;
}
if(!bL.__eU||!bL.__eV){return false;
}bL=bL.__fi;
}return false;
},__fl:function(bM){if(bM.__fi===this){throw new Error("Child is already in: "+bM);
}
if(bM.__cX){throw new Error("Root elements could not be inserted into other ones.");
}if(bM.__fi){bM.__fi.remove(bM);
}bM.__fi=this;
if(!this.__fg){this.__fg=[];
}if(this.__eT){this._scheduleChildrenUpdate();
}},__fm:function(bN){if(bN.__fi!==this){throw new Error("Has no child: "+bN);
}if(this.__eT){this._scheduleChildrenUpdate();
}delete bN.__fi;
},__fn:function(bO){if(bO.__fi!==this){throw new Error("Has no child: "+bO);
}if(this.__eT){this._scheduleChildrenUpdate();
}},getChildren:function(){return this.__fg||null;
},getChild:function(bP){var bQ=this.__fg;
return bQ&&bQ[bP]||null;
},hasChildren:function(){var bR=this.__fg;
return bR&&bR[0]!==undefined;
},indexOf:function(bS){var bT=this.__fg;
return bT?bT.indexOf(bS):-1;
},hasChild:function(bU){var bV=this.__fg;
return bV&&bV.indexOf(bU)!==-1;
},add:function(bW){if(arguments[1]){for(var i=0,l=arguments.length;i<l;i++){this.__fl(arguments[i]);
}this.__fg.push.apply(this.__fg,arguments);
}else{this.__fl(bW);
this.__fg.push(bW);
}return this;
},addAt:function(bX,bY){this.__fl(bX);
qx.lang.Array.insertAt(this.__fg,bX,bY);
return this;
},remove:function(ca){var cb=this.__fg;

if(!cb){return;
}
if(arguments[1]){var cc;

for(var i=0,l=arguments.length;i<l;i++){cc=arguments[i];
this.__fm(cc);
qx.lang.Array.remove(cb,cc);
}}else{this.__fm(ca);
qx.lang.Array.remove(cb,ca);
}return this;
},removeAt:function(cd){var ce=this.__fg;

if(!ce){throw new Error("Has no children!");
}var cf=ce[cd];

if(!cf){throw new Error("Has no child at this position!");
}this.__fm(cf);
qx.lang.Array.removeAt(this.__fg,cd);
return this;
},removeAll:function(){var cg=this.__fg;

if(cg){for(var i=0,l=cg.length;i<l;i++){this.__fm(cg[i]);
}cg.length=0;
}return this;
},getParent:function(){return this.__fi||null;
},insertInto:function(parent,ch){parent.__fl(this);

if(ch==null){parent.__fg.push(this);
}else{qx.lang.Array.insertAt(this.__fg,this,ch);
}return this;
},insertBefore:function(ci){var parent=ci.__fi;
parent.__fl(this);
qx.lang.Array.insertBefore(parent.__fg,this,ci);
return this;
},insertAfter:function(cj){var parent=cj.__fi;
parent.__fl(this);
qx.lang.Array.insertAfter(parent.__fg,this,cj);
return this;
},moveTo:function(ck){var parent=this.__fi;
parent.__fn(this);
var cl=parent.__fg.indexOf(this);

if(cl===ck){throw new Error("Could not move to same index!");
}else if(cl<ck){ck--;
}qx.lang.Array.removeAt(parent.__fg,cl);
qx.lang.Array.insertAt(parent.__fg,this,ck);
return this;
},moveBefore:function(cm){var parent=this.__fi;
return this.moveTo(parent.__fg.indexOf(cm));
},moveAfter:function(cn){var parent=this.__fi;
return this.moveTo(parent.__fg.indexOf(cn)+1);
},free:function(){var parent=this.__fi;

if(!parent){throw new Error("Has no parent to remove from.");
}
if(!parent.__fg){return;
}parent.__fm(this);
qx.lang.Array.remove(parent.__fg,this);
return this;
},getDomElement:function(){return this.__eT||null;
},getNodeName:function(){return this.__eK;
},setNodeName:function(name){this.__eK=name;
},setRoot:function(co){this.__cX=co;
},useMarkup:function(cp){if(this.__eT){throw new Error("Could not overwrite existing element!");
}if((qx.core.Environment.get(h)==b)){var cq=document.createElement(d);
}else{var cq=qx.bom.Element.getHelperElement();
}cq.innerHTML=cp;
this.useElement(cq.firstChild);
return this.__eT;
},useElement:function(cr){if(this.__eT){throw new Error("Could not overwrite existing element!");
}this.__eT=cr;
this.__eT.$$element=this.$$hash;
this._copyData(true);
},isFocusable:function(){var ct=this.getAttribute(q);

if(ct>=1){return true;
}var cs=qx.event.handler.Focus.FOCUSABLE_ELEMENTS;

if(ct>=0&&cs[this.__eK]){return true;
}return false;
},setSelectable:qx.core.Environment.select(h,{"webkit":function(cu){this.setAttribute(k,cu?g:j);
this.setStyle(w,cu?f:a);
},"gecko":function(cv){this.setAttribute(k,cv?g:j);
this.setStyle(o,cv?f:v);
},"default":function(cw){this.setAttribute(k,cw?g:j);
}}),isNativelyFocusable:function(){return !!qx.event.handler.Focus.FOCUSABLE_ELEMENTS[this.__eK];
},include:function(){if(this.__eU){return;
}delete this.__eU;

if(this.__fi){this.__fi._scheduleChildrenUpdate();
}return this;
},exclude:function(){if(!this.__eU){return;
}this.__eU=false;

if(this.__fi){this.__fi._scheduleChildrenUpdate();
}return this;
},isIncluded:function(){return this.__eU===true;
},show:function(){if(this.__eV){return;
}
if(this.__eT){qx.html.Element._visibility[this.$$hash]=this;
qx.html.Element._scheduleFlush(m);
}if(this.__fi){this.__fi._scheduleChildrenUpdate();
}delete this.__eV;
},hide:function(){if(!this.__eV){return;
}
if(this.__eT){qx.html.Element._visibility[this.$$hash]=this;
qx.html.Element._scheduleFlush(m);
}this.__eV=false;
},isVisible:function(){return this.__eV===true;
},scrollChildIntoViewX:function(cx,cy,cz){var cA=this.__eT;
var cB=cx.getDomElement();

if(cz!==false&&cA&&cA.offsetWidth&&cB&&cB.offsetWidth){qx.bom.element.Scroll.intoViewX(cB,cA,cy);
}else{this.__eW={element:cx,align:cy};
qx.html.Element._scroll[this.$$hash]=this;
qx.html.Element._scheduleFlush(m);
}delete this.__eY;
},scrollChildIntoViewY:function(cC,cD,cE){var cF=this.__eT;
var cG=cC.getDomElement();

if(cE!==false&&cF&&cF.offsetWidth&&cG&&cG.offsetWidth){qx.bom.element.Scroll.intoViewY(cG,cF,cD);
}else{this.__eX={element:cC,align:cD};
qx.html.Element._scroll[this.$$hash]=this;
qx.html.Element._scheduleFlush(m);
}delete this.__fa;
},scrollToX:function(x,cH){var cI=this.__eT;

if(cH!==true&&cI&&cI.offsetWidth){cI.scrollLeft=x;
delete this.__eY;
}else{this.__eY=x;
qx.html.Element._scroll[this.$$hash]=this;
qx.html.Element._scheduleFlush(m);
}delete this.__eW;
},getScrollX:function(){var cJ=this.__eT;

if(cJ){return cJ.scrollLeft;
}return this.__eY||0;
},scrollToY:function(y,cK){var cL=this.__eT;

if(cK!==true&&cL&&cL.offsetWidth){cL.scrollTop=y;
delete this.__fa;
}else{this.__fa=y;
qx.html.Element._scroll[this.$$hash]=this;
qx.html.Element._scheduleFlush(m);
}delete this.__eX;
},getScrollY:function(){var cM=this.__eT;

if(cM){return cM.scrollTop;
}return this.__fa||0;
},disableScrolling:function(){this.enableScrolling();
this.scrollToX(0);
this.scrollToY(0);
this.addListener(F,this.__fp,this);
},enableScrolling:function(){this.removeListener(F,this.__fp,this);
},__fo:null,__fp:function(e){if(!this.__fo){this.__fo=true;
this.__eT.scrollTop=0;
this.__eT.scrollLeft=0;
delete this.__fo;
}},getTextSelection:function(){var cN=this.__eT;

if(cN){return qx.bom.Selection.get(cN);
}return null;
},getTextSelectionLength:function(){var cO=this.__eT;

if(cO){return qx.bom.Selection.getLength(cO);
}return null;
},getTextSelectionStart:function(){var cP=this.__eT;

if(cP){return qx.bom.Selection.getStart(cP);
}return null;
},getTextSelectionEnd:function(){var cQ=this.__eT;

if(cQ){return qx.bom.Selection.getEnd(cQ);
}return null;
},setTextSelection:function(cR,cS){var cT=this.__eT;

if(cT){qx.bom.Selection.set(cT,cR,cS);
return;
}qx.html.Element.__eN[this.toHashCode()]={element:this,start:cR,end:cS};
qx.html.Element._scheduleFlush(m);
},clearTextSelection:function(){var cU=this.__eT;

if(cU){qx.bom.Selection.clear(cU);
}delete qx.html.Element.__eN[this.toHashCode()];
},__fq:function(cV,cW){var cX=qx.html.Element._actions;
cX.push({type:cV,element:this,args:cW||[]});
qx.html.Element._scheduleFlush(m);
},focus:function(){this.__fq(r);
},blur:function(){this.__fq(B);
},activate:function(){this.__fq(C);
},deactivate:function(){this.__fq(A);
},capture:function(cY){this.__fq(z,[cY!==false]);
},releaseCapture:function(){this.__fq(s);
},setStyle:function(da,dc,dd){if(!this.__eL){this.__eL={};
}
if(this.__eL[da]==dc){return;
}
if(dc==null){delete this.__eL[da];
}else{this.__eL[da]=dc;
}if(this.__eT){if(dd){qx.bom.element.Style.set(this.__eT,da,dc);
return this;
}if(!this.__fb){this.__fb={};
}this.__fb[da]=true;
qx.html.Element._modified[this.$$hash]=this;
qx.html.Element._scheduleFlush(m);
}return this;
},setStyles:function(de,df){var dg=qx.bom.element.Style;

if(!this.__eL){this.__eL={};
}
if(this.__eT){if(!this.__fb){this.__fb={};
}
for(var di in de){var dh=de[di];

if(this.__eL[di]==dh){continue;
}
if(dh==null){delete this.__eL[di];
}else{this.__eL[di]=dh;
}if(df){dg.set(this.__eT,di,dh);
continue;
}this.__fb[di]=true;
}qx.html.Element._modified[this.$$hash]=this;
qx.html.Element._scheduleFlush(m);
}else{for(var di in de){var dh=de[di];

if(this.__eL[di]==dh){continue;
}
if(dh==null){delete this.__eL[di];
}else{this.__eL[di]=dh;
}}}return this;
},removeStyle:function(dj,dk){this.setStyle(dj,null,dk);
},getStyle:function(dl){return this.__eL?this.__eL[dl]:null;
},getAllStyles:function(){return this.__eL||null;
},setAttribute:function(dm,dn,dp){if(!this.__eM){this.__eM={};
}
if(this.__eM[dm]==dn){return;
}
if(dn==null){delete this.__eM[dm];
}else{this.__eM[dm]=dn;
}if(this.__eT){if(dp){qx.bom.element.Attribute.set(this.__eT,dm,dn);
return this;
}if(!this.__fc){this.__fc={};
}this.__fc[dm]=true;
qx.html.Element._modified[this.$$hash]=this;
qx.html.Element._scheduleFlush(m);
}return this;
},setAttributes:function(dq,dr){for(var ds in dq){this.setAttribute(ds,dq[ds],dr);
}return this;
},removeAttribute:function(dt,du){this.setAttribute(dt,null,du);
},getAttribute:function(dv){return this.__eM?this.__eM[dv]:null;
},_applyProperty:function(name,dw){},_setProperty:function(dx,dy,dz){if(!this.__fe){this.__fe={};
}
if(this.__fe[dx]==dy){return;
}
if(dy==null){delete this.__fe[dx];
}else{this.__fe[dx]=dy;
}if(this.__eT){if(dz){this._applyProperty(dx,dy);
return this;
}if(!this.__fd){this.__fd={};
}this.__fd[dx]=true;
qx.html.Element._modified[this.$$hash]=this;
qx.html.Element._scheduleFlush(m);
}return this;
},_removeProperty:function(dA,dB){this._setProperty(dA,null,dB);
},_getProperty:function(dC){var dD=this.__fe;

if(!dD){return null;
}var dE=dD[dC];
return dE==null?null:dE;
},addListener:function(dF,dG,self,dH){var dI;

if(this.$$disposed){return null;
}
if(this.__eT){return qx.event.Registration.addListener(this.__eT,dF,dG,self,dH);
}
if(!this.__ff){this.__ff={};
}
if(dH==null){dH=false;
}var dJ=qx.event.Manager.getNextUniqueId();
var dK=dF+(dH?D:t)+dJ;
this.__ff[dK]={type:dF,listener:dG,self:self,capture:dH,unique:dJ};
return dK;
},removeListener:function(dL,dM,self,dN){var dO;

if(this.$$disposed){return null;
}
if(this.__eT){qx.event.Registration.removeListener(this.__eT,dL,dM,self,dN);
}else{var dQ=this.__ff;
var dP;

if(dN==null){dN=false;
}
for(var dR in dQ){dP=dQ[dR];
if(dP.listener===dM&&dP.self===self&&dP.capture===dN&&dP.type===dL){delete dQ[dR];
break;
}}}return this;
},removeListenerById:function(dS){if(this.$$disposed){return null;
}
if(this.__eT){qx.event.Registration.removeListenerById(this.__eT,dS);
}else{delete this.__ff[dS];
}return this;
},hasListener:function(dT,dU){if(this.$$disposed){return false;
}
if(this.__eT){return qx.event.Registration.hasListener(this.__eT,dT,dU);
}var dW=this.__ff;
var dV;

if(dU==null){dU=false;
}
for(var dX in dW){dV=dW[dX];
if(dV.capture===dU&&dV.type===dT){return true;
}}return false;
}},defer:function(dY){dY.__fr=new qx.util.DeferredCall(dY.flush,dY);
},destruct:function(){var ea=this.__eT;

if(ea){qx.event.Registration.getManager(ea).removeAllListeners(ea);
ea.$$element=c;
}
if(!qx.core.ObjectRegistry.inShutDown){var parent=this.__fi;

if(parent&&!parent.$$disposed){parent.remove(this);
}}this._disposeArray(n);
this.__eM=this.__eL=this.__ff=this.__fe=this.__fc=this.__fb=this.__fd=this.__eT=this.__fi=this.__eW=this.__eX=null;
}});
})();
(function(){var e="orientationchange",d="resize",c="landscape",b="portrait",a="qx.event.handler.Orientation";
qx.Class.define(a,{extend:qx.core.Object,implement:qx.event.IEventHandler,construct:function(f){qx.core.Object.call(this);
this.__eJ=f;
this.__cv=f.getWindow();
this._initObserver();
},statics:{PRIORITY:qx.event.Registration.PRIORITY_NORMAL,SUPPORTED_TYPES:{orientationchange:1},TARGET_CHECK:qx.event.IEventHandler.TARGET_WINDOW,IGNORE_CAN_HANDLE:true},members:{__eJ:null,__cv:null,__fs:null,__ft:null,__fu:null,canHandleEvent:function(g,h){},registerEvent:function(i,j,k){},unregisterEvent:function(l,m,n){},_initObserver:function(){this.__fu=qx.lang.Function.listener(this._onNative,this);
this.__fs=qx.bom.Event.supportsEvent(this.__cv,e)?e:d;
var Event=qx.bom.Event;
Event.addNativeListener(this.__cv,this.__fs,this.__fu);
},_stopObserver:function(){var Event=qx.bom.Event;
Event.removeNativeListener(this.__cv,this.__fs,this.__fu);
},_onNative:qx.event.GlobalError.observeMethod(function(o){var q=qx.bom.Viewport;
var p=q.getOrientation();

if(this.__ft!=p){this.__ft=p;
var r=q.isLandscape()?c:b;
qx.event.Registration.fireEvent(this.__cv,e,qx.event.type.Orientation,[p,r]);
}})},destruct:function(){this._stopObserver();
this.__eJ=this.__cv=null;
},defer:function(s){qx.event.Registration.addHandler(s);
}});
})();
(function(){var c="landscape",b="qx.event.type.Orientation",a="portrait";
qx.Class.define(b,{extend:qx.event.type.Event,members:{__fv:null,__fw:null,init:function(d,e){qx.event.type.Event.prototype.init.call(this,false,false);
this.__fv=d;
this.__fw=e;
return this;
},clone:function(f){var g=qx.event.type.Event.prototype.clone.call(this,f);
g.__fv=this.__fv;
g.__fw=this.__fw;
return g;
},getOrientation:function(){return this.__fv;
},isLandscape:function(){return this.__fw==c;
},isPortrait:function(){return this.__fw==a;
}}});
})();
(function(){var g="event.pointer",f="mshtml",e="event.touch",d="opera",c="pointerEvents",b="qx.bom.client.Event",a="ontouchstart";
qx.Bootstrap.define(b,{statics:{getTouch:function(){return (a in window);
},getPointer:function(){if(c in document.documentElement.style){var h=qx.bom.client.Engine.getName();
return h!=d&&h!=f;
}return false;
}},defer:function(i){qx.core.Environment.add(e,i.getTouch);
qx.core.Environment.add(g,i.getPointer);
}});
})();
(function(){var a="qx.event.handler.UserAction";
qx.Class.define(a,{extend:qx.core.Object,implement:qx.event.IEventHandler,construct:function(b){qx.core.Object.call(this);
this.__eJ=b;
this.__cv=b.getWindow();
},statics:{PRIORITY:qx.event.Registration.PRIORITY_NORMAL,SUPPORTED_TYPES:{useraction:1},TARGET_CHECK:qx.event.IEventHandler.TARGET_WINDOW,IGNORE_CAN_HANDLE:true},members:{__eJ:null,__cv:null,canHandleEvent:function(c,d){},registerEvent:function(e,f,g){},unregisterEvent:function(h,i,j){}},destruct:function(){this.__eJ=this.__cv=null;
},defer:function(k){qx.event.Registration.addHandler(k);
}});
})();
(function(){var t="qx.mobile.emulatetouch",s="touchend",r="touchstart",q="touchmove",p="event.touch",o="mousemove",n="engine.name",m="touchcancel",l="mouseup",k="mousedown",d="mshtml",j="qx.event.handler.Touch",h="useraction",c="swipe",b="qx.mobile.nativescroll",g="webkit",f="tap",i="x",a="y";
qx.Class.define(j,{extend:qx.core.Object,implement:qx.event.IEventHandler,construct:function(u){qx.core.Object.call(this);
this.__eJ=u;
this.__cv=u.getWindow();
this.__cX=this.__cv.document;
this._initTouchObserver();
this._initMouseObserver();
},statics:{PRIORITY:qx.event.Registration.PRIORITY_NORMAL,SUPPORTED_TYPES:{touchstart:1,touchmove:1,touchend:1,touchcancel:1,tap:1,swipe:1},TARGET_CHECK:qx.event.IEventHandler.TARGET_DOMNODE+qx.event.IEventHandler.TARGET_DOCUMENT,IGNORE_CAN_HANDLE:true,MOUSE_TO_TOUCH_MAPPING:{"mousedown":"touchstart","mousemove":"touchmove","mouseup":"touchend"},SWIPE_DIRECTION:{x:["left","right"],y:["up","down"]},TAP_MAX_DISTANCE:qx.core.Environment.get("os.name")!="android"?10:40,SWIPE_MIN_DISTANCE:qx.core.Environment.get("os.name")!="android"?11:41,SWIPE_MIN_VELOCITY:0},members:{__fx:null,__fy:null,__eJ:null,__cv:null,__cX:null,__fz:null,__fA:null,__fB:null,__fC:null,__fD:false,__fE:null,canHandleEvent:function(v,w){},registerEvent:function(x,y,z){},unregisterEvent:function(A,B,C){},__fF:function(D){var E=qx.bom.Event.getTarget(D);
if((qx.core.Environment.get(n)==g)){if(E&&E.nodeType==3){E=E.parentNode;
}}return E;
},__fG:function(F,G,H,I){if(!H){H=this.__fF(F);
}var G=G||F.type;

if(H&&H.nodeType){qx.event.Registration.fireEvent(H,G,I||qx.event.type.Touch,[F,H,null,true,true]);
}qx.event.Registration.fireEvent(this.__cv,h,qx.event.type.Data,[G]);
},__fH:function(J,K,L){if(!L){L=this.__fF(J);
}var K=K||J.type;

if(K==r){this.__fI(J,L);
}else if(K==q){this.__fJ(J,L);
}else if(K==s){this.__fK(J,L);
}},__fI:function(M,N){var O=M.changedTouches[0];
this.__fz=O.screenX;
this.__fA=O.screenY;
this.__fB=new Date().getTime();
this.__fC=M.changedTouches.length===1;
},__fJ:function(P,Q){if(this.__fC&&P.changedTouches.length>1){this.__fC=false;
}},__fK:function(R,S){if(this.__fC){var T=R.changedTouches[0];
var V={x:T.screenX-this.__fz,y:T.screenY-this.__fA};
var W=qx.event.handler.Touch;

if(this.__fE==S&&Math.abs(V.x)<=W.TAP_MAX_DISTANCE&&Math.abs(V.y)<=W.TAP_MAX_DISTANCE){this.__fG(R,f,S,qx.event.type.Tap);
}else{var U=this.__fL(R,S,V);

if(U){R.swipe=U;
this.__fG(R,c,S,qx.event.type.Swipe);
}}}},__fL:function(X,Y,ba){var be=qx.event.handler.Touch;
var bf=new Date().getTime()-this.__fB;
var bh=(Math.abs(ba.x)>=Math.abs(ba.y))?i:a;
var bb=ba[bh];
var bc=be.SWIPE_DIRECTION[bh][bb<0?0:1];
var bg=(bf!==0)?bb/bf:0;
var bd=null;

if(Math.abs(bg)>=be.SWIPE_MIN_VELOCITY&&Math.abs(bb)>=be.SWIPE_MIN_DISTANCE){bd={startTime:this.__fB,duration:bf,axis:bh,direction:bc,distance:bb,velocity:bg};
}return bd;
},__fM:qx.core.Environment.select(t,{"true":function(bi){var bj=bi.type;
var bl=qx.event.handler.Touch.MOUSE_TO_TOUCH_MAPPING;

if(bl[bj]){bj=bl[bj];
if(bj==r&&this.__fN(bi)){this.__fD=true;
}else if(bj==s){this.__fD=false;
}var bm=this.__fO(bi);
var bk=(bj==s?[]:[bm]);
bi.touches=bk;
bi.targetTouches=bk;
bi.changedTouches=[bm];
}return bj;
},"default":qx.lang.Function.empty}),__fN:qx.core.Environment.select(t,{"true":function(bn){if((qx.core.Environment.get(n)==d)){var bo=1;
}else{var bo=0;
}return bn.button==bo;
},"default":qx.lang.Function.empty}),__fO:qx.core.Environment.select(t,{"true":function(bp){var bq=this.__fF(bp);
return {clientX:bp.clientX,clientY:bp.clientY,screenX:bp.screenX,screenY:bp.screenY,pageX:bp.pageX,pageY:bp.pageY,identifier:1,target:bq};
},"default":qx.lang.Function.empty}),_initTouchObserver:function(){this.__fx=qx.lang.Function.listener(this._onTouchEvent,this);
var Event=qx.bom.Event;
Event.addNativeListener(this.__cX,r,this.__fx);
Event.addNativeListener(this.__cX,q,this.__fx);
Event.addNativeListener(this.__cX,s,this.__fx);
Event.addNativeListener(this.__cX,m,this.__fx);
},_initMouseObserver:qx.core.Environment.select(t,{"true":function(){if(!qx.core.Environment.get(p)){this.__fy=qx.lang.Function.listener(this._onMouseEvent,this);
var Event=qx.bom.Event;
Event.addNativeListener(this.__cX,k,this.__fy);
Event.addNativeListener(this.__cX,o,this.__fy);
Event.addNativeListener(this.__cX,l,this.__fy);
}},"default":qx.lang.Function.empty}),_stopTouchObserver:function(){var Event=qx.bom.Event;
Event.removeNativeListener(this.__cX,r,this.__fx);
Event.removeNativeListener(this.__cX,q,this.__fx);
Event.removeNativeListener(this.__cX,s,this.__fx);
Event.removeNativeListener(this.__cX,m,this.__fx);
},_stopMouseObserver:qx.core.Environment.select(t,{"true":function(){if(!qx.core.Environment.get(p)){var Event=qx.bom.Event;
Event.removeNativeListener(this.__cX,k,this.__fy);
Event.removeNativeListener(this.__cX,o,this.__fy);
Event.removeNativeListener(this.__cX,l,this.__fy);
}},"default":qx.lang.Function.empty}),_onTouchEvent:qx.event.GlobalError.observeMethod(function(br){this._commonTouchEventHandler(br);
}),_onMouseEvent:qx.core.Environment.select(t,{"true":qx.event.GlobalError.observeMethod(function(bs){if(!qx.core.Environment.get(p)){if(bs.type==o&&!this.__fD){return;
}var bt=this.__fM(bs);
this._commonTouchEventHandler(bs,bt);
}}),"default":qx.lang.Function.empty}),_commonTouchEventHandler:function(bu,bv){var bv=bv||bu.type;

if(bv==r){this.__fE=this.__fF(bu);
}this.__fG(bu,bv);
this.__fH(bu,bv);
}},destruct:function(){this._stopTouchObserver();
this._stopMouseObserver();
this.__eJ=this.__cv=this.__cX=this.__fE=null;
},defer:function(bw){qx.event.Registration.addHandler(bw);
if(qx.core.Environment.get(p)){if(qx.core.Environment.get(b)==false){document.addEventListener(q,function(e){e.preventDefault();
});
}qx.event.Registration.getManager(document).getHandler(bw);
}}});
})();
(function(){var c="os.name",b="qx.event.type.Dom",a="osx";
qx.Class.define(b,{extend:qx.event.type.Native,statics:{SHIFT_MASK:1,CTRL_MASK:2,ALT_MASK:4,META_MASK:8},members:{_cloneNativeEvent:function(d,e){var e=qx.event.type.Native.prototype._cloneNativeEvent.call(this,d,e);
e.shiftKey=d.shiftKey;
e.ctrlKey=d.ctrlKey;
e.altKey=d.altKey;
e.metaKey=d.metaKey;
return e;
},getModifiers:function(){var g=0;
var f=this._native;

if(f.shiftKey){g|=qx.event.type.Dom.SHIFT_MASK;
}
if(f.ctrlKey){g|=qx.event.type.Dom.CTRL_MASK;
}
if(f.altKey){g|=qx.event.type.Dom.ALT_MASK;
}
if(f.metaKey){g|=qx.event.type.Dom.META_MASK;
}return g;
},isCtrlPressed:function(){return this._native.ctrlKey;
},isShiftPressed:function(){return this._native.shiftKey;
},isAltPressed:function(){return this._native.altKey;
},isMetaPressed:function(){return this._native.metaKey;
},isCtrlOrCommandPressed:function(){if(qx.core.Environment.get(c)==a){return this._native.metaKey;
}else{return this._native.ctrlKey;
}}}});
})();
(function(){var c="touchcancel",b="qx.event.type.Touch",a="touchend";
qx.Class.define(b,{extend:qx.event.type.Dom,members:{_cloneNativeEvent:function(d,e){var e=qx.event.type.Dom.prototype._cloneNativeEvent.call(this,d,e);
e.pageX=d.pageX;
e.pageY=d.pageY;
e.layerX=d.layerX;
e.layerY=d.layerY;
e.scale=d.scale;
e.rotation=d.rotation;
e.srcElement=d.srcElement;
e.targetTouches=[];

for(var i=0;i<d.targetTouches.length;i++){e.targetTouches[i]=d.targetTouches[i];
}e.changedTouches=[];

for(var i=0;i<d.changedTouches.length;i++){e.changedTouches[i]=d.changedTouches[i];
}e.touches=[];

for(var i=0;i<d.touches.length;i++){e.touches[i]=d.touches[i];
}return e;
},stop:function(){this.stopPropagation();
},getAllTouches:function(){return this._native.touches;
},getTargetTouches:function(){return this._native.targetTouches;
},getChangedTargetTouches:function(){return this._native.changedTouches;
},isMultiTouch:function(){return this.__fQ().length>1;
},getScale:function(){return this._native.scale;
},getRotation:function(){return this._native.rotation;
},getDocumentLeft:function(f){return this.__fP(f).pageX;
},getDocumentTop:function(g){return this.__fP(g).pageY;
},getScreenLeft:function(h){return this.__fP(h).screenX;
},getScreenTop:function(j){return this.__fP(j).screenY;
},getViewportLeft:function(k){return this.__fP(k).clientX;
},getViewportTop:function(l){return this.__fP(l).clientY;
},getIdentifier:function(m){return this.__fP(m).identifier;
},__fP:function(n){n=n==null?0:n;
return this.__fQ()[n];
},__fQ:function(){var o=(this._isTouchEnd()?this.getChangedTargetTouches():this.getTargetTouches());
return o;
},_isTouchEnd:function(){return (this.getType()==a||this.getType()==c);
}}});
})();
(function(){var a="qx.event.type.Tap";
qx.Class.define(a,{extend:qx.event.type.Touch,members:{_isTouchEnd:function(){return true;
}}});
})();
(function(){var a="qx.event.type.Swipe";
qx.Class.define(a,{extend:qx.event.type.Touch,members:{_cloneNativeEvent:function(b,c){var c=qx.event.type.Touch.prototype._cloneNativeEvent.call(this,b,c);
c.swipe=b.swipe;
return c;
},_isTouchEnd:function(){return true;
},getStartTime:function(){return this._native.swipe.startTime;
},getDuration:function(){return this._native.swipe.duration;
},getAxis:function(){return this._native.swipe.axis;
},getDirection:function(){return this._native.swipe.direction;
},getVelocity:function(){return this._native.swipe.velocity;
},getDistance:function(){return this._native.swipe.distance;
}}});
})();
(function(){var c="qx.event.handler.Appear",b="disappear",a="appear";
qx.Class.define(c,{extend:qx.core.Object,implement:qx.event.IEventHandler,construct:function(d){qx.core.Object.call(this);
this.__eJ=d;
this.__fR={};
qx.event.handler.Appear.__fS[this.$$hash]=this;
},statics:{PRIORITY:qx.event.Registration.PRIORITY_NORMAL,SUPPORTED_TYPES:{appear:true,disappear:true},TARGET_CHECK:qx.event.IEventHandler.TARGET_DOMNODE,IGNORE_CAN_HANDLE:true,__fS:{},refresh:function(){var e=this.__fS;

for(var f in e){e[f].refresh();
}}},members:{__eJ:null,__fR:null,canHandleEvent:function(g,h){},registerEvent:function(i,j,k){var l=qx.core.ObjectRegistry.toHashCode(i)+j;
var m=this.__fR;

if(m&&!m[l]){m[l]=i;
i.$$displayed=i.offsetWidth>0;
}},unregisterEvent:function(n,o,p){var q=qx.core.ObjectRegistry.toHashCode(n)+o;
var r=this.__fR;

if(!r){return;
}
if(r[q]){delete r[q];
}},refresh:function(){var v=this.__fR;
var w;

for(var u in v){w=v[u];
var s=w.offsetWidth>0;

if((!!w.$$displayed)!==s){w.$$displayed=s;
var t=qx.event.Registration.createEvent(s?a:b);
this.__eJ.dispatchEvent(w,t);
}}}},destruct:function(){this.__eJ=this.__fR=null;
delete qx.event.handler.Appear.__fS[this.$$hash];
},defer:function(x){qx.event.Registration.addHandler(x);
}});
})();
(function(){var b="abstract",a="qx.event.dispatch.AbstractBubbling";
qx.Class.define(a,{extend:qx.core.Object,implement:qx.event.IEventDispatcher,type:b,construct:function(c){this._manager=c;
},members:{_getParent:function(d){throw new Error("Missing implementation");
},canDispatchEvent:function(e,event,f){return event.getBubbles();
},dispatchEvent:function(g,event,h){var parent=g;
var s=this._manager;
var p,w;
var n;
var r,u;
var t;
var v=[];
p=s.getListeners(g,h,true);
w=s.getListeners(g,h,false);

if(p){v.push(p);
}
if(w){v.push(w);
}var parent=this._getParent(g);
var l=[];
var k=[];
var m=[];
var q=[];
while(parent!=null){p=s.getListeners(parent,h,true);

if(p){m.push(p);
q.push(parent);
}w=s.getListeners(parent,h,false);

if(w){l.push(w);
k.push(parent);
}parent=this._getParent(parent);
}event.setEventPhase(qx.event.type.Event.CAPTURING_PHASE);

for(var i=m.length-1;i>=0;i--){t=q[i];
event.setCurrentTarget(t);
n=m[i];

for(var j=0,o=n.length;j<o;j++){r=n[j];
u=r.context||t;
r.handler.call(u,event);
}
if(event.getPropagationStopped()){return;
}}event.setEventPhase(qx.event.type.Event.AT_TARGET);
event.setCurrentTarget(g);

for(var i=0,x=v.length;i<x;i++){n=v[i];

for(var j=0,o=n.length;j<o;j++){r=n[j];
u=r.context||g;
r.handler.call(u,event);
}
if(event.getPropagationStopped()){return;
}}event.setEventPhase(qx.event.type.Event.BUBBLING_PHASE);

for(var i=0,x=l.length;i<x;i++){t=k[i];
event.setCurrentTarget(t);
n=l[i];

for(var j=0,o=n.length;j<o;j++){r=n[j];
u=r.context||t;
r.handler.call(u,event);
}
if(event.getPropagationStopped()){return;
}}}}});
})();
(function(){var a="qx.event.dispatch.DomBubbling";
qx.Class.define(a,{extend:qx.event.dispatch.AbstractBubbling,statics:{PRIORITY:qx.event.Registration.PRIORITY_NORMAL},members:{_getParent:function(b){return b.parentNode;
},canDispatchEvent:function(c,event,d){return c.nodeType!==undefined&&event.getBubbles();
}},defer:function(e){qx.event.Registration.addDispatcher(e);
}});
})();
(function(){var d="-",c="qx.event.handler.Element",b="load",a="iframe";
qx.Class.define(c,{extend:qx.core.Object,implement:qx.event.IEventHandler,construct:function(e){qx.core.Object.call(this);
this._manager=e;
this._registeredEvents={};
},statics:{PRIORITY:qx.event.Registration.PRIORITY_NORMAL,SUPPORTED_TYPES:{abort:true,load:true,scroll:true,select:true,reset:true,submit:true},CANCELABLE:{selectstart:true},TARGET_CHECK:qx.event.IEventHandler.TARGET_DOMNODE,IGNORE_CAN_HANDLE:false},members:{canHandleEvent:function(f,g){if(g===b){return f.tagName.toLowerCase()!==a;
}else{return true;
}},registerEvent:function(h,i,j){var m=qx.core.ObjectRegistry.toHashCode(h);
var k=m+d+i;
var l=qx.lang.Function.listener(this._onNative,this,k);
qx.bom.Event.addNativeListener(h,i,l);
this._registeredEvents[k]={element:h,type:i,listener:l};
},unregisterEvent:function(n,o,p){var s=this._registeredEvents;

if(!s){return;
}var t=qx.core.ObjectRegistry.toHashCode(n);
var q=t+d+o;
var r=this._registeredEvents[q];

if(r){qx.bom.Event.removeNativeListener(n,o,r.listener);
}delete this._registeredEvents[q];
},_onNative:qx.event.GlobalError.observeMethod(function(u,v){var x=this._registeredEvents;

if(!x){return;
}var w=x[v];
var y=this.constructor.CANCELABLE[w.type];
qx.event.Registration.fireNonBubblingEvent(w.element,w.type,qx.event.type.Native,[u,undefined,undefined,undefined,y]);
})},destruct:function(){var z;
var A=this._registeredEvents;

for(var B in A){z=A[B];
qx.bom.Event.removeNativeListener(z.element,z.type,z.listener);
}this._manager=this._registeredEvents=null;
},defer:function(C){qx.event.Registration.addHandler(C);
}});
})();
(function(){var a="qx.event.handler.Capture";
qx.Class.define(a,{extend:qx.core.Object,implement:qx.event.IEventHandler,statics:{PRIORITY:qx.event.Registration.PRIORITY_NORMAL,SUPPORTED_TYPES:{capture:true,losecapture:true},TARGET_CHECK:qx.event.IEventHandler.TARGET_DOMNODE,IGNORE_CAN_HANDLE:true},members:{canHandleEvent:function(b,c){},registerEvent:function(d,e,f){},unregisterEvent:function(g,h,i){}},defer:function(j){qx.event.Registration.addHandler(j);
}});
})();
(function(){var t="mouseup",s="engine.name",r="click",q="mousedown",p="contextmenu",o="mousewheel",n="dblclick",m="os.name",l="mouseover",k="mouseout",d="ios",j="mousemove",g="on",c="engine.version",b="useraction",f="webkit",e="gecko",h="DOMMouseScroll",a="qx.event.handler.Mouse";
qx.Class.define(a,{extend:qx.core.Object,implement:qx.event.IEventHandler,construct:function(u){qx.core.Object.call(this);
this.__eJ=u;
this.__cv=u.getWindow();
this.__cX=this.__cv.document;
this._initButtonObserver();
this._initMoveObserver();
this._initWheelObserver();
},statics:{PRIORITY:qx.event.Registration.PRIORITY_NORMAL,SUPPORTED_TYPES:{mousemove:1,mouseover:1,mouseout:1,mousedown:1,mouseup:1,click:1,dblclick:1,contextmenu:1,mousewheel:1},TARGET_CHECK:qx.event.IEventHandler.TARGET_DOMNODE+qx.event.IEventHandler.TARGET_DOCUMENT+qx.event.IEventHandler.TARGET_WINDOW,IGNORE_CAN_HANDLE:true},members:{__fT:null,__fU:null,__fV:null,__fW:null,__fX:null,__eJ:null,__cv:null,__cX:null,canHandleEvent:function(v,w){},registerEvent:qx.core.Environment.get(m)===d?function(x,y,z){x[g+y]=qx.lang.Function.returnNull;
}:qx.lang.Function.returnNull,unregisterEvent:qx.core.Environment.get(m)===d?function(A,B,C){A[g+B]=undefined;
}:qx.lang.Function.returnNull,__fG:function(D,E,F){if(!F){F=qx.bom.Event.getTarget(D);
}if(F&&F.nodeType){qx.event.Registration.fireEvent(F,E||D.type,E==o?qx.event.type.MouseWheel:qx.event.type.Mouse,[D,F,null,true,true]);
}qx.event.Registration.fireEvent(this.__cv,b,qx.event.type.Data,[E||D.type]);
},__fY:function(){var H=[this.__cv,this.__cX,this.__cX.body];
var I=this.__cv;
var G=h;

for(var i=0;i<H.length;i++){if(qx.bom.Event.supportsEvent(H[i],o)){G=o;
I=H[i];
break;
}}return {type:G,target:I};
},_initButtonObserver:function(){this.__fT=qx.lang.Function.listener(this._onButtonEvent,this);
var Event=qx.bom.Event;
Event.addNativeListener(this.__cX,q,this.__fT);
Event.addNativeListener(this.__cX,t,this.__fT);
Event.addNativeListener(this.__cX,r,this.__fT);
Event.addNativeListener(this.__cX,n,this.__fT);
Event.addNativeListener(this.__cX,p,this.__fT);
},_initMoveObserver:function(){this.__fU=qx.lang.Function.listener(this._onMoveEvent,this);
var Event=qx.bom.Event;
Event.addNativeListener(this.__cX,j,this.__fU);
Event.addNativeListener(this.__cX,l,this.__fU);
Event.addNativeListener(this.__cX,k,this.__fU);
},_initWheelObserver:function(){this.__fV=qx.lang.Function.listener(this._onWheelEvent,this);
var J=this.__fY();
qx.bom.Event.addNativeListener(J.target,J.type,this.__fV);
},_stopButtonObserver:function(){var Event=qx.bom.Event;
Event.removeNativeListener(this.__cX,q,this.__fT);
Event.removeNativeListener(this.__cX,t,this.__fT);
Event.removeNativeListener(this.__cX,r,this.__fT);
Event.removeNativeListener(this.__cX,n,this.__fT);
Event.removeNativeListener(this.__cX,p,this.__fT);
},_stopMoveObserver:function(){var Event=qx.bom.Event;
Event.removeNativeListener(this.__cX,j,this.__fU);
Event.removeNativeListener(this.__cX,l,this.__fU);
Event.removeNativeListener(this.__cX,k,this.__fU);
},_stopWheelObserver:function(){var K=this.__fY();
qx.bom.Event.removeNativeListener(K.target,K.type,this.__fV);
},_onMoveEvent:qx.event.GlobalError.observeMethod(function(L){this.__fG(L);
}),_onButtonEvent:qx.event.GlobalError.observeMethod(function(M){var N=M.type;
var O=qx.bom.Event.getTarget(M);
if(qx.core.Environment.get(s)==e||qx.core.Environment.get(s)==f){if(O&&O.nodeType==3){O=O.parentNode;
}}
if(this.__ga){this.__ga(M,N,O);
}
if(this.__gc){this.__gc(M,N,O);
}this.__fG(M,N,O);

if(this.__gb){this.__gb(M,N,O);
}
if(this.__gd){this.__gd(M,N,O);
}this.__fW=N;
}),_onWheelEvent:qx.event.GlobalError.observeMethod(function(P){this.__fG(P,o);
}),__ga:qx.core.Environment.select(s,{"webkit":function(Q,R,S){if(parseFloat(qx.core.Environment.get(c))<530){if(R==p){this.__fG(Q,t,S);
}}},"default":null}),__gb:qx.core.Environment.select(s,{"opera":function(T,U,V){if(U==t&&T.button==2){this.__fG(T,p,V);
}},"default":null}),__gc:qx.core.Environment.select(s,{"mshtml":function(W,X,Y){if(W.target!==undefined){return;
}
if(X==t&&this.__fW==r){this.__fG(W,q,Y);
}else if(X==n){this.__fG(W,r,Y);
}},"default":null}),__gd:qx.core.Environment.select(s,{"mshtml":null,"default":function(ba,bb,bc){switch(bb){case q:this.__fX=bc;
break;
case t:if(bc!==this.__fX){var bd=qx.dom.Hierarchy.getCommonParent(bc,this.__fX);
this.__fG(ba,r,bd);
}}}})},destruct:function(){this._stopButtonObserver();
this._stopMoveObserver();
this._stopWheelObserver();
this.__eJ=this.__cv=this.__cX=this.__fX=null;
},defer:function(be){qx.event.Registration.addHandler(be);
}});
})();
(function(){var j="left",i="right",h="middle",g="none",f="click",e="contextmenu",d="qx.event.type.Mouse",c="browser.documentmode",b="browser.name",a="ie";
qx.Class.define(d,{extend:qx.event.type.Dom,members:{_cloneNativeEvent:function(k,l){var l=qx.event.type.Dom.prototype._cloneNativeEvent.call(this,k,l);
l.button=k.button;
l.clientX=k.clientX;
l.clientY=k.clientY;
l.pageX=k.pageX;
l.pageY=k.pageY;
l.screenX=k.screenX;
l.screenY=k.screenY;
l.wheelDelta=k.wheelDelta;
l.wheelDeltaX=k.wheelDeltaX;
l.wheelDeltaY=k.wheelDeltaY;
l.detail=k.detail;
l.axis=k.axis;
l.wheelX=k.wheelX;
l.wheelY=k.wheelY;
l.HORIZONTAL_AXIS=k.HORIZONTAL_AXIS;
l.srcElement=k.srcElement;
l.target=k.target;
return l;
},__ge:{0:j,2:i,1:h},__gf:{1:j,2:i,4:h},stop:function(){this.stopPropagation();
},getButton:function(){switch(this._type){case e:return i;
case f:if(qx.core.Environment.get(b)===a&&qx.core.Environment.get(c)<9){return j;
}default:if(this._native.target!==undefined){return this.__ge[this._native.button]||g;
}else{return this.__gf[this._native.button]||g;
}}},isLeftPressed:function(){return this.getButton()===j;
},isMiddlePressed:function(){return this.getButton()===h;
},isRightPressed:function(){return this.getButton()===i;
},getRelatedTarget:function(){return this._relatedTarget;
},getViewportLeft:function(){return this._native.clientX;
},getViewportTop:function(){return this._native.clientY;
},getDocumentLeft:function(){if(this._native.pageX!==undefined){return this._native.pageX;
}else{var m=qx.dom.Node.getWindow(this._native.srcElement);
return this._native.clientX+qx.bom.Viewport.getScrollLeft(m);
}},getDocumentTop:function(){if(this._native.pageY!==undefined){return this._native.pageY;
}else{var n=qx.dom.Node.getWindow(this._native.srcElement);
return this._native.clientY+qx.bom.Viewport.getScrollTop(n);
}},getScreenLeft:function(){return this._native.screenX;
},getScreenTop:function(){return this._native.screenY;
}}});
})();
(function(){var l="engine.version",k="os.name",j="engine.name",i="x",h="osx",g="win",f="qx.dynamicmousewheel",d="chrome",c="qx.event.type.MouseWheel",b="browser.name",a="y";
qx.Class.define(c,{extend:qx.event.type.Mouse,statics:{MAXSCROLL:null,MINSCROLL:null,FACTOR:1},members:{stop:function(){this.stopPropagation();
this.preventDefault();
},__gg:function(m){var n=Math.abs(m);
if(qx.event.type.MouseWheel.MINSCROLL==null||qx.event.type.MouseWheel.MINSCROLL>n){qx.event.type.MouseWheel.MINSCROLL=n;
this.__gh();
}if(qx.event.type.MouseWheel.MAXSCROLL==null||qx.event.type.MouseWheel.MAXSCROLL<n){qx.event.type.MouseWheel.MAXSCROLL=n;
this.__gh();
}if(qx.event.type.MouseWheel.MAXSCROLL===n&&qx.event.type.MouseWheel.MINSCROLL===n){return 2*(m/n);
}var o=qx.event.type.MouseWheel.MAXSCROLL-qx.event.type.MouseWheel.MINSCROLL;
var p=(m/o)*Math.log(o)*qx.event.type.MouseWheel.FACTOR;
return p<0?Math.min(p,-1):Math.max(p,1);
},__gh:function(){var q=qx.event.type.MouseWheel.MAXSCROLL||0;
var t=qx.event.type.MouseWheel.MINSCROLL||q;

if(q<=t){return;
}var r=q-t;
var s=(q/r)*Math.log(r);

if(s==0){s=1;
}qx.event.type.MouseWheel.FACTOR=6/s;
},getWheelDelta:function(u){var e=this._native;
if(u===undefined){if(v===undefined){var v=-e.wheelDelta;

if(e.wheelDelta===undefined){v=e.detail;
}}return this.__gi(v);
}if(u===i){var x=0;

if(e.wheelDelta!==undefined){if(e.wheelDeltaX!==undefined){x=e.wheelDeltaX?this.__gi(-e.wheelDeltaX):0;
}}else{if(e.axis&&e.axis==e.HORIZONTAL_AXIS){x=this.__gi(e.detail);
}}return x;
}if(u===a){var y=0;

if(e.wheelDelta!==undefined){if(e.wheelDeltaY!==undefined){y=e.wheelDeltaY?this.__gi(-e.wheelDeltaY):0;
}else{y=this.__gi(-e.wheelDelta);
}}else{if(!(e.axis&&e.axis==e.HORIZONTAL_AXIS)){y=this.__gi(e.detail);
}}return y;
}return 0;
},__gi:function(w){if(qx.core.Environment.get(f)){return this.__gg(w);
}else{var z=qx.core.Environment.select(j,{"default":function(){return w/40;
},"gecko":function(){return w;
},"webkit":function(){if(qx.core.Environment.get(b)==d){if(qx.core.Environment.get(k)==h){return w/60;
}else{return w/120;
}}else{if(qx.core.Environment.get(k)==g){var A=120;
if(parseFloat(qx.core.Environment.get(l))==533.16){A=1200;
}}else{A=40;
if(parseFloat(qx.core.Environment.get(l))==533.16||parseFloat(qx.core.Environment.get(l))==533.17||parseFloat(qx.core.Environment.get(l))==533.18){A=1200;
}}return w/A;
}}});
return z.call(this);
}}}});
})();
(function(){var f="engine.name",e="qx.dom.Hierarchy",d="previousSibling",c="*",b="nextSibling",a="parentNode";
qx.Class.define(e,{statics:{getNodeIndex:function(g){var h=0;

while(g&&(g=g.previousSibling)){h++;
}return h;
},getElementIndex:function(i){var j=0;
var k=qx.dom.Node.ELEMENT;

while(i&&(i=i.previousSibling)){if(i.nodeType==k){j++;
}}return j;
},getNextElementSibling:function(l){while(l&&(l=l.nextSibling)&&!qx.dom.Node.isElement(l)){continue;
}return l||null;
},getPreviousElementSibling:function(m){while(m&&(m=m.previousSibling)&&!qx.dom.Node.isElement(m)){continue;
}return m||null;
},contains:qx.core.Environment.select(f,{"webkit|mshtml|opera":function(n,o){if(qx.dom.Node.isDocument(n)){var p=qx.dom.Node.getDocument(o);
return n&&p==n;
}else if(qx.dom.Node.isDocument(o)){return false;
}else{return n.contains(o);
}},"gecko":function(q,r){return !!(q.compareDocumentPosition(r)&16);
},"default":function(s,t){while(t){if(s==t){return true;
}t=t.parentNode;
}return false;
}}),isRendered:qx.core.Environment.select(f,{"mshtml":function(u){if(!u.parentNode||!u.offsetParent){return false;
}var v=u.ownerDocument||u.document;
return v.body.contains(u);
},"gecko":function(w){var x=w.ownerDocument||w.document;
return !!(x.compareDocumentPosition(w)&16);
},"default":function(y){if(!y.parentNode||!y.offsetParent){return false;
}var z=y.ownerDocument||y.document;
return z.body.contains(y);
}}),isDescendantOf:function(A,B){return this.contains(B,A);
},getCommonParent:qx.core.Environment.select(f,{"mshtml|opera":function(C,D){if(C===D){return C;
}
while(C&&qx.dom.Node.isElement(C)){if(C.contains(D)){return C;
}C=C.parentNode;
}return null;
},"default":function(E,F){if(E===F){return E;
}var G={};
var J=qx.core.ObjectRegistry;
var I,H;

while(E||F){if(E){I=J.toHashCode(E);

if(G[I]){return G[I];
}G[I]=E;
E=E.parentNode;
}
if(F){H=J.toHashCode(F);

if(G[H]){return G[H];
}G[H]=F;
F=F.parentNode;
}}return null;
}}),getAncestors:function(K){return this._recursivelyCollect(K,a);
},getChildElements:function(L){L=L.firstChild;

if(!L){return [];
}var M=this.getNextSiblings(L);

if(L.nodeType===1){M.unshift(L);
}return M;
},getDescendants:function(N){return qx.lang.Array.fromCollection(N.getElementsByTagName(c));
},getFirstDescendant:function(O){O=O.firstChild;

while(O&&O.nodeType!=1){O=O.nextSibling;
}return O;
},getLastDescendant:function(P){P=P.lastChild;

while(P&&P.nodeType!=1){P=P.previousSibling;
}return P;
},getPreviousSiblings:function(Q){return this._recursivelyCollect(Q,d);
},getNextSiblings:function(R){return this._recursivelyCollect(R,b);
},_recursivelyCollect:function(S,T){var U=[];

while(S=S[T]){if(S.nodeType==1){U.push(S);
}}return U;
},getSiblings:function(V){return this.getPreviousSiblings(V).reverse().concat(this.getNextSiblings(V));
},isEmpty:function(W){W=W.firstChild;

while(W){if(W.nodeType===qx.dom.Node.ELEMENT||W.nodeType===qx.dom.Node.TEXT){return false;
}W=W.nextSibling;
}return true;
},cleanWhitespace:function(X){var Y=X.firstChild;

while(Y){var ba=Y.nextSibling;

if(Y.nodeType==3&&!/\S/.test(Y.nodeValue)){X.removeChild(Y);
}Y=ba;
}}}});
})();
(function(){var m="keydown",l="engine.name",k="keypress",j="NumLock",i="keyup",h="os.name",g="Enter",f="0",e="engine.version",d="9",bx="-",bw="+",bv="PrintScreen",bu="PageUp",bt="gecko",bs="A",br="Space",bq="Left",bp="F5",bo="Down",t="Up",u="F11",r="F6",s="useraction",p="F3",q="keyinput",n="Insert",o="F8",B="End",C="/",Q="Delete",M="*",Y="F1",T="F4",bk="Home",be="F2",H="F12",bn="PageDown",bm="mshtml",bl="F7",F="Win",J="osx",L="F9",O="webkit",R="cmd",U="F10",bb="Right",bg="Z",v="text",w="Escape",I="5",X="3",W="Meta",V="7",bd="Scroll",bc="CapsLock",S="input",ba="Control",a="Tab",bf="Shift",x="Pause",y="Unidentified",N="qx.event.handler.Keyboard",b="win",c="1",E="Apps",z="6",A="off",D="4",P="Alt",bi="2",bh="8",K="Backspace",bj="autoComplete",G=",";
qx.Class.define(N,{extend:qx.core.Object,implement:qx.event.IEventHandler,construct:function(by){qx.core.Object.call(this);
this.__eJ=by;
this.__cv=by.getWindow();
if((qx.core.Environment.get(l)==bt)){this.__cX=this.__cv;
}else{this.__cX=this.__cv.document.documentElement;
}this.__gj={};
this._initKeyObserver();
},statics:{PRIORITY:qx.event.Registration.PRIORITY_NORMAL,SUPPORTED_TYPES:{keyup:1,keydown:1,keypress:1,keyinput:1},TARGET_CHECK:qx.event.IEventHandler.TARGET_DOMNODE,IGNORE_CAN_HANDLE:true,isValidKeyIdentifier:function(bz){if(this._identifierToKeyCodeMap[bz]){return true;
}
if(bz.length!=1){return false;
}
if(bz>=f&&bz<=d){return true;
}
if(bz>=bs&&bz<=bg){return true;
}
switch(bz){case bw:case bx:case M:case C:return true;
default:return false;
}},isPrintableKeyIdentifier:function(bA){if(bA===br){return true;
}else{return this._identifierToKeyCodeMap[bA]?false:true;
}}},members:{__gk:null,__eJ:null,__cv:null,__cX:null,__gj:null,__gl:null,__gm:null,__gn:null,canHandleEvent:function(bB,bC){},registerEvent:function(bD,bE,bF){},unregisterEvent:function(bG,bH,bI){},_fireInputEvent:function(bJ,bK){var bL=this.__go();
if(bL&&bL.offsetWidth!=0){var event=qx.event.Registration.createEvent(q,qx.event.type.KeyInput,[bJ,bL,bK]);
this.__eJ.dispatchEvent(bL,event);
}if(this.__cv){qx.event.Registration.fireEvent(this.__cv,s,qx.event.type.Data,[q]);
}},_fireSequenceEvent:function(bM,bN,bO){var bP=this.__go();
var bQ=bM.keyCode;
var event=qx.event.Registration.createEvent(bN,qx.event.type.KeySequence,[bM,bP,bO]);
this.__eJ.dispatchEvent(bP,event);
if(qx.core.Environment.get(l)==bm||qx.core.Environment.get(l)==O){if(bN==m&&event.getDefaultPrevented()){if(!this._isNonPrintableKeyCode(bQ)&&!this._emulateKeyPress[bQ]){this._fireSequenceEvent(bM,k,bO);
}}}if(this.__cv){qx.event.Registration.fireEvent(this.__cv,s,qx.event.type.Data,[bN]);
}},__go:function(){var bR=this.__eJ.getHandler(qx.event.handler.Focus);
var bS=bR.getActive();
if(!bS||bS.offsetWidth==0){bS=bR.getFocus();
}if(!bS||bS.offsetWidth==0){bS=this.__eJ.getWindow().document.body;
}return bS;
},_initKeyObserver:function(){this.__gk=qx.lang.Function.listener(this.__gp,this);
this.__gn=qx.lang.Function.listener(this.__gr,this);
var Event=qx.bom.Event;
Event.addNativeListener(this.__cX,i,this.__gk);
Event.addNativeListener(this.__cX,m,this.__gk);
Event.addNativeListener(this.__cX,k,this.__gn);
},_stopKeyObserver:function(){var Event=qx.bom.Event;
Event.removeNativeListener(this.__cX,i,this.__gk);
Event.removeNativeListener(this.__cX,m,this.__gk);
Event.removeNativeListener(this.__cX,k,this.__gn);

for(var bU in (this.__gm||{})){var bT=this.__gm[bU];
Event.removeNativeListener(bT.target,k,bT.callback);
}delete (this.__gm);
},__gp:qx.event.GlobalError.observeMethod(qx.core.Environment.select(l,{"mshtml":function(bV){bV=window.event||bV;
var bY=bV.keyCode;
var bW=0;
var bX=bV.type;
if(!(this.__gj[bY]==m&&bX==m)){this._idealKeyHandler(bY,bW,bX,bV);
}if(bX==m){if(this._isNonPrintableKeyCode(bY)||this._emulateKeyPress[bY]){this._idealKeyHandler(bY,bW,k,bV);
}}this.__gj[bY]=bX;
},"gecko":function(ca){var ce=this._keyCodeFix[ca.keyCode]||ca.keyCode;
var cc=0;
var cd=ca.type;
if(qx.core.Environment.get(h)==b){var cb=ce?this._keyCodeToIdentifier(ce):this._charCodeToIdentifier(cc);

if(!(this.__gj[cb]==m&&cd==m)){this._idealKeyHandler(ce,cc,cd,ca);
}this.__gj[cb]=cd;
}else{this._idealKeyHandler(ce,cc,cd,ca);
}this.__gq(ca.target,cd,ce);
},"webkit":function(cf){var ci=0;
var cg=0;
var ch=cf.type;
if(parseFloat(qx.core.Environment.get(e))<525.13){if(ch==i||ch==m){ci=this._charCode2KeyCode[cf.charCode]||cf.keyCode;
}else{if(this._charCode2KeyCode[cf.charCode]){ci=this._charCode2KeyCode[cf.charCode];
}else{cg=cf.charCode;
}}this._idealKeyHandler(ci,cg,ch,cf);
}else{ci=cf.keyCode;
this._idealKeyHandler(ci,cg,ch,cf);
if(ch==m){if(this._isNonPrintableKeyCode(ci)||this._emulateKeyPress[ci]){this._idealKeyHandler(ci,cg,k,cf);
}}this.__gj[ci]=ch;
}},"opera":function(cj){this.__gl=cj.keyCode;
this._idealKeyHandler(cj.keyCode,0,cj.type,cj);
}})),__gq:qx.core.Environment.select(l,{"gecko":function(ck,cl,cm){if(cl===m&&(cm==33||cm==34||cm==38||cm==40)&&ck.type==v&&ck.tagName.toLowerCase()===S&&ck.getAttribute(bj)!==A){if(!this.__gm){this.__gm={};
}var co=qx.core.ObjectRegistry.toHashCode(ck);

if(this.__gm[co]){return;
}var self=this;
this.__gm[co]={target:ck,callback:function(cp){qx.bom.Event.stopPropagation(cp);
self.__gr(cp);
}};
var cn=qx.event.GlobalError.observeMethod(this.__gm[co].callback);
qx.bom.Event.addNativeListener(ck,k,cn);
}},"default":null}),__gr:qx.event.GlobalError.observeMethod(qx.core.Environment.select(l,{"mshtml":function(cq){cq=window.event||cq;

if(this._charCode2KeyCode[cq.keyCode]){this._idealKeyHandler(this._charCode2KeyCode[cq.keyCode],0,cq.type,cq);
}else{this._idealKeyHandler(0,cq.keyCode,cq.type,cq);
}},"gecko":function(cr){var cu=this._keyCodeFix[cr.keyCode]||cr.keyCode;
var cs=cr.charCode;
var ct=cr.type;
this._idealKeyHandler(cu,cs,ct,cr);
},"webkit":function(cv){if(parseFloat(qx.core.Environment.get(e))<525.13){var cy=0;
var cw=0;
var cx=cv.type;

if(cx==i||cx==m){cy=this._charCode2KeyCode[cv.charCode]||cv.keyCode;
}else{if(this._charCode2KeyCode[cv.charCode]){cy=this._charCode2KeyCode[cv.charCode];
}else{cw=cv.charCode;
}}this._idealKeyHandler(cy,cw,cx,cv);
}else{if(this._charCode2KeyCode[cv.keyCode]){this._idealKeyHandler(this._charCode2KeyCode[cv.keyCode],0,cv.type,cv);
}else{this._idealKeyHandler(0,cv.keyCode,cv.type,cv);
}}},"opera":function(cz){var cB=cz.keyCode;
var cA=cz.type;
if(cB!=this.__gl){this._idealKeyHandler(0,this.__gl,cA,cz);
}else{if(this._keyCodeToIdentifierMap[cz.keyCode]){this._idealKeyHandler(cz.keyCode,0,cz.type,cz);
}else{this._idealKeyHandler(0,cz.keyCode,cz.type,cz);
}}}})),_idealKeyHandler:function(cC,cD,cE,cF){var cG;
if(cC||(!cC&&!cD)){cG=this._keyCodeToIdentifier(cC);
this._fireSequenceEvent(cF,cE,cG);
}else{cG=this._charCodeToIdentifier(cD);
this._fireSequenceEvent(cF,k,cG);
this._fireInputEvent(cF,cD);
}},_specialCharCodeMap:{8:K,9:a,13:g,27:w,32:br},_emulateKeyPress:qx.core.Environment.select(l,{"mshtml":{8:true,9:true},"webkit":{8:true,9:true,27:true},"default":{}}),_keyCodeToIdentifierMap:{16:bf,17:ba,18:P,20:bc,224:W,37:bq,38:t,39:bb,40:bo,33:bu,34:bn,35:B,36:bk,45:n,46:Q,112:Y,113:be,114:p,115:T,116:bp,117:r,118:bl,119:o,120:L,121:U,122:u,123:H,144:j,44:bv,145:bd,19:x,91:qx.core.Environment.get(h)==J?R:F,92:F,93:qx.core.Environment.get(h)==J?R:E},_numpadToCharCode:{96:f.charCodeAt(0),97:c.charCodeAt(0),98:bi.charCodeAt(0),99:X.charCodeAt(0),100:D.charCodeAt(0),101:I.charCodeAt(0),102:z.charCodeAt(0),103:V.charCodeAt(0),104:bh.charCodeAt(0),105:d.charCodeAt(0),106:M.charCodeAt(0),107:bw.charCodeAt(0),109:bx.charCodeAt(0),110:G.charCodeAt(0),111:C.charCodeAt(0)},_charCodeA:bs.charCodeAt(0),_charCodeZ:bg.charCodeAt(0),_charCode0:f.charCodeAt(0),_charCode9:d.charCodeAt(0),_isNonPrintableKeyCode:function(cH){return this._keyCodeToIdentifierMap[cH]?true:false;
},_isIdentifiableKeyCode:function(cI){if(cI>=this._charCodeA&&cI<=this._charCodeZ){return true;
}if(cI>=this._charCode0&&cI<=this._charCode9){return true;
}if(this._specialCharCodeMap[cI]){return true;
}if(this._numpadToCharCode[cI]){return true;
}if(this._isNonPrintableKeyCode(cI)){return true;
}return false;
},_keyCodeToIdentifier:function(cJ){if(this._isIdentifiableKeyCode(cJ)){var cK=this._numpadToCharCode[cJ];

if(cK){return String.fromCharCode(cK);
}return (this._keyCodeToIdentifierMap[cJ]||this._specialCharCodeMap[cJ]||String.fromCharCode(cJ));
}else{return y;
}},_charCodeToIdentifier:function(cL){return this._specialCharCodeMap[cL]||String.fromCharCode(cL).toUpperCase();
},_identifierToKeyCode:function(cM){return qx.event.handler.Keyboard._identifierToKeyCodeMap[cM]||cM.charCodeAt(0);
}},destruct:function(){this._stopKeyObserver();
this.__gl=this.__eJ=this.__cv=this.__cX=this.__gj=null;
},defer:function(cN,cO){qx.event.Registration.addHandler(cN);
if(!cN._identifierToKeyCodeMap){cN._identifierToKeyCodeMap={};

for(var cP in cO._keyCodeToIdentifierMap){cN._identifierToKeyCodeMap[cO._keyCodeToIdentifierMap[cP]]=parseInt(cP,10);
}
for(var cP in cO._specialCharCodeMap){cN._identifierToKeyCodeMap[cO._specialCharCodeMap[cP]]=parseInt(cP,10);
}}
if((qx.core.Environment.get(l)==bm)){cO._charCode2KeyCode={13:13,27:27};
}else if((qx.core.Environment.get(l)==bt)){cO._keyCodeFix={12:cO._identifierToKeyCode(j)};
}else if((qx.core.Environment.get(l)==O)){if(parseFloat(qx.core.Environment.get(e))<525.13){cO._charCode2KeyCode={63289:cO._identifierToKeyCode(j),63276:cO._identifierToKeyCode(bu),63277:cO._identifierToKeyCode(bn),63275:cO._identifierToKeyCode(B),63273:cO._identifierToKeyCode(bk),63234:cO._identifierToKeyCode(bq),63232:cO._identifierToKeyCode(t),63235:cO._identifierToKeyCode(bb),63233:cO._identifierToKeyCode(bo),63272:cO._identifierToKeyCode(Q),63302:cO._identifierToKeyCode(n),63236:cO._identifierToKeyCode(Y),63237:cO._identifierToKeyCode(be),63238:cO._identifierToKeyCode(p),63239:cO._identifierToKeyCode(T),63240:cO._identifierToKeyCode(bp),63241:cO._identifierToKeyCode(r),63242:cO._identifierToKeyCode(bl),63243:cO._identifierToKeyCode(o),63244:cO._identifierToKeyCode(L),63245:cO._identifierToKeyCode(U),63246:cO._identifierToKeyCode(u),63247:cO._identifierToKeyCode(H),63248:cO._identifierToKeyCode(bv),3:cO._identifierToKeyCode(g),12:cO._identifierToKeyCode(j),13:cO._identifierToKeyCode(g)};
}else{cO._charCode2KeyCode={13:13,27:27};
}}}});
})();
(function(){var a="qx.event.type.KeyInput";
qx.Class.define(a,{extend:qx.event.type.Dom,members:{init:function(b,c,d){qx.event.type.Dom.prototype.init.call(this,b,c,null,true,true);
this._charCode=d;
return this;
},clone:function(e){var f=qx.event.type.Dom.prototype.clone.call(this,e);
f._charCode=this._charCode;
return f;
},getCharCode:function(){return this._charCode;
},getChar:function(){return String.fromCharCode(this._charCode);
}}});
})();
(function(){var a="qx.event.type.KeySequence";
qx.Class.define(a,{extend:qx.event.type.Dom,members:{init:function(b,c,d){qx.event.type.Dom.prototype.init.call(this,b,c,null,true,true);
this._keyCode=b.keyCode;
this._identifier=d;
return this;
},clone:function(e){var f=qx.event.type.Dom.prototype.clone.call(this,e);
f._keyCode=this._keyCode;
f._identifier=this._identifier;
return f;
},getKeyIdentifier:function(){return this._identifier;
},getKeyCode:function(){return this._keyCode;
},isPrintable:function(){return qx.event.handler.Keyboard.isPrintableKeyIdentifier(this._identifier);
}}});
})();
(function(){var j="engine.name",i="mousedown",h="mouseup",g="blur",f="focus",e="on",d="selectstart",c="DOMFocusOut",b="focusin",a="focusout",z="DOMFocusIn",y="draggesture",x="qx.event.handler.Focus",w="_applyFocus",v="deactivate",u="textarea",t="_applyActive",s='character',r="input",q="qxSelectable",o="tabIndex",p="off",m="activate",n="mshtml",k="qxKeepFocus",l="qxKeepActive";
qx.Class.define(x,{extend:qx.core.Object,implement:qx.event.IEventHandler,construct:function(A){qx.core.Object.call(this);
this._manager=A;
this._window=A.getWindow();
this._document=this._window.document;
this._root=this._document.documentElement;
this._body=this._document.body;
this._initObserver();
},properties:{active:{apply:t,nullable:true},focus:{apply:w,nullable:true}},statics:{PRIORITY:qx.event.Registration.PRIORITY_NORMAL,SUPPORTED_TYPES:{focus:1,blur:1,focusin:1,focusout:1,activate:1,deactivate:1},IGNORE_CAN_HANDLE:true,FOCUSABLE_ELEMENTS:qx.core.Environment.select("engine.name",{"mshtml|gecko":{a:1,body:1,button:1,frame:1,iframe:1,img:1,input:1,object:1,select:1,textarea:1},"opera|webkit":{button:1,input:1,select:1,textarea:1}})},members:{__gs:null,__gt:null,__gu:null,__gv:null,__gw:null,__gx:null,__gy:null,__gz:null,__gA:null,__gB:null,canHandleEvent:function(B,C){},registerEvent:function(D,E,F){},unregisterEvent:function(G,H,I){},focus:function(J){if((qx.core.Environment.get(j)==n)){window.setTimeout(function(){try{J.focus();
var K=qx.bom.Selection.get(J);

if(K.length==0){var L=J.createTextRange();
L.moveStart(s,J.value.length);
L.collapse();
L.select();
}}catch(M){}},0);
}else{try{J.focus();
}catch(N){}}this.setFocus(J);
this.setActive(J);
},activate:function(O){this.setActive(O);
},blur:function(P){try{P.blur();
}catch(Q){}
if(this.getActive()===P){this.resetActive();
}
if(this.getFocus()===P){this.resetFocus();
}},deactivate:function(R){if(this.getActive()===R){this.resetActive();
}},tryActivate:function(S){var T=this.__gP(S);

if(T){this.setActive(T);
}},__fG:function(U,V,W,X){var ba=qx.event.Registration;
var Y=ba.createEvent(W,qx.event.type.Focus,[U,V,X]);
ba.dispatchEvent(U,Y);
},_windowFocused:true,__gC:function(){if(this._windowFocused){this._windowFocused=false;
this.__fG(this._window,null,g,false);
}},__gD:function(){if(!this._windowFocused){this._windowFocused=true;
this.__fG(this._window,null,f,false);
}},_initObserver:qx.core.Environment.select(j,{"gecko":function(){this.__gs=qx.lang.Function.listener(this.__gJ,this);
this.__gt=qx.lang.Function.listener(this.__gK,this);
this.__gu=qx.lang.Function.listener(this.__gI,this);
this.__gv=qx.lang.Function.listener(this.__gH,this);
this.__gw=qx.lang.Function.listener(this.__gE,this);
qx.bom.Event.addNativeListener(this._document,i,this.__gs,true);
qx.bom.Event.addNativeListener(this._document,h,this.__gt,true);
qx.bom.Event.addNativeListener(this._window,f,this.__gu,true);
qx.bom.Event.addNativeListener(this._window,g,this.__gv,true);
qx.bom.Event.addNativeListener(this._window,y,this.__gw,true);
},"mshtml":function(){this.__gs=qx.lang.Function.listener(this.__gJ,this);
this.__gt=qx.lang.Function.listener(this.__gK,this);
this.__gy=qx.lang.Function.listener(this.__gF,this);
this.__gz=qx.lang.Function.listener(this.__gG,this);
this.__gx=qx.lang.Function.listener(this.__gM,this);
qx.bom.Event.addNativeListener(this._document,i,this.__gs);
qx.bom.Event.addNativeListener(this._document,h,this.__gt);
qx.bom.Event.addNativeListener(this._document,b,this.__gy);
qx.bom.Event.addNativeListener(this._document,a,this.__gz);
qx.bom.Event.addNativeListener(this._document,d,this.__gx);
},"webkit":function(){this.__gs=qx.lang.Function.listener(this.__gJ,this);
this.__gt=qx.lang.Function.listener(this.__gK,this);
this.__gz=qx.lang.Function.listener(this.__gG,this);
this.__gu=qx.lang.Function.listener(this.__gI,this);
this.__gv=qx.lang.Function.listener(this.__gH,this);
this.__gx=qx.lang.Function.listener(this.__gM,this);
qx.bom.Event.addNativeListener(this._document,i,this.__gs,true);
qx.bom.Event.addNativeListener(this._document,h,this.__gt,true);
qx.bom.Event.addNativeListener(this._document,d,this.__gx,false);
qx.bom.Event.addNativeListener(this._window,c,this.__gz,true);
qx.bom.Event.addNativeListener(this._window,f,this.__gu,true);
qx.bom.Event.addNativeListener(this._window,g,this.__gv,true);
},"opera":function(){this.__gs=qx.lang.Function.listener(this.__gJ,this);
this.__gt=qx.lang.Function.listener(this.__gK,this);
this.__gy=qx.lang.Function.listener(this.__gF,this);
this.__gz=qx.lang.Function.listener(this.__gG,this);
qx.bom.Event.addNativeListener(this._document,i,this.__gs,true);
qx.bom.Event.addNativeListener(this._document,h,this.__gt,true);
qx.bom.Event.addNativeListener(this._window,z,this.__gy,true);
qx.bom.Event.addNativeListener(this._window,c,this.__gz,true);
}}),_stopObserver:qx.core.Environment.select(j,{"gecko":function(){qx.bom.Event.removeNativeListener(this._document,i,this.__gs,true);
qx.bom.Event.removeNativeListener(this._document,h,this.__gt,true);
qx.bom.Event.removeNativeListener(this._window,f,this.__gu,true);
qx.bom.Event.removeNativeListener(this._window,g,this.__gv,true);
qx.bom.Event.removeNativeListener(this._window,y,this.__gw,true);
},"mshtml":function(){qx.bom.Event.removeNativeListener(this._document,i,this.__gs);
qx.bom.Event.removeNativeListener(this._document,h,this.__gt);
qx.bom.Event.removeNativeListener(this._document,b,this.__gy);
qx.bom.Event.removeNativeListener(this._document,a,this.__gz);
qx.bom.Event.removeNativeListener(this._document,d,this.__gx);
},"webkit":function(){qx.bom.Event.removeNativeListener(this._document,i,this.__gs,true);
qx.bom.Event.removeNativeListener(this._document,h,this.__gt,true);
qx.bom.Event.removeNativeListener(this._document,d,this.__gx,false);
qx.bom.Event.removeNativeListener(this._window,c,this.__gz,true);
qx.bom.Event.removeNativeListener(this._window,f,this.__gu,true);
qx.bom.Event.removeNativeListener(this._window,g,this.__gv,true);
},"opera":function(){qx.bom.Event.removeNativeListener(this._document,i,this.__gs,true);
qx.bom.Event.removeNativeListener(this._document,h,this.__gt,true);
qx.bom.Event.removeNativeListener(this._window,z,this.__gy,true);
qx.bom.Event.removeNativeListener(this._window,c,this.__gz,true);
}}),__gE:qx.event.GlobalError.observeMethod(qx.core.Environment.select(j,{"gecko":function(bb){var bc=qx.bom.Event.getTarget(bb);

if(!this.__gQ(bc)){qx.bom.Event.preventDefault(bb);
}},"default":null})),__gF:qx.event.GlobalError.observeMethod(qx.core.Environment.select(j,{"mshtml":function(bd){this.__gD();
var bf=qx.bom.Event.getTarget(bd);
var be=this.__gO(bf);

if(be){this.setFocus(be);
}this.tryActivate(bf);
},"opera":function(bg){var bh=qx.bom.Event.getTarget(bg);

if(bh==this._document||bh==this._window){this.__gD();

if(this.__gA){this.setFocus(this.__gA);
delete this.__gA;
}
if(this.__gB){this.setActive(this.__gB);
delete this.__gB;
}}else{this.setFocus(bh);
this.tryActivate(bh);
if(!this.__gQ(bh)){bh.selectionStart=0;
bh.selectionEnd=0;
}}},"default":null})),__gG:qx.event.GlobalError.observeMethod(qx.core.Environment.select(j,{"mshtml":function(bi){var bj=qx.bom.Event.getRelatedTarget(bi);
if(bj==null){this.__gC();
this.resetFocus();
this.resetActive();
}},"webkit":function(bk){var bl=qx.bom.Event.getTarget(bk);

if(bl===this.getFocus()){this.resetFocus();
}
if(bl===this.getActive()){this.resetActive();
}},"opera":function(bm){var bn=qx.bom.Event.getTarget(bm);

if(bn==this._document){this.__gC();
this.__gA=this.getFocus();
this.__gB=this.getActive();
this.resetFocus();
this.resetActive();
}else{if(bn===this.getFocus()){this.resetFocus();
}
if(bn===this.getActive()){this.resetActive();
}}},"default":null})),__gH:qx.event.GlobalError.observeMethod(qx.core.Environment.select(j,{"gecko":function(bo){var bp=qx.bom.Event.getTarget(bo);

if(bp===this._window||bp===this._document){this.__gC();
this.resetActive();
this.resetFocus();
}},"webkit":function(bq){var br=qx.bom.Event.getTarget(bq);

if(br===this._window||br===this._document){this.__gC();
this.__gA=this.getFocus();
this.__gB=this.getActive();
this.resetActive();
this.resetFocus();
}},"default":null})),__gI:qx.event.GlobalError.observeMethod(qx.core.Environment.select(j,{"gecko":function(bs){var bt=qx.bom.Event.getTarget(bs);

if(bt===this._window||bt===this._document){this.__gD();
bt=this._body;
}this.setFocus(bt);
this.tryActivate(bt);
},"webkit":function(bu){var bv=qx.bom.Event.getTarget(bu);

if(bv===this._window||bv===this._document){this.__gD();

if(this.__gA){this.setFocus(this.__gA);
delete this.__gA;
}
if(this.__gB){this.setActive(this.__gB);
delete this.__gB;
}}else{this.setFocus(bv);
this.tryActivate(bv);
}},"default":null})),__gJ:qx.event.GlobalError.observeMethod(qx.core.Environment.select(j,{"gecko":function(bw){var by=qx.bom.Event.getTarget(bw);
var bx=this.__gO(by);

if(!bx){qx.bom.Event.preventDefault(bw);
}else if(bx===this._body){this.setFocus(bx);
}},"mshtml":function(bz){var bB=qx.bom.Event.getTarget(bz);
var bA=this.__gO(bB);

if(bA){if(!this.__gQ(bB)){bB.unselectable=e;
try{document.selection.empty();
}catch(bC){}try{bA.focus();
}catch(bD){}}}else{qx.bom.Event.preventDefault(bz);
if(!this.__gQ(bB)){bB.unselectable=e;
}}},"webkit":function(bE){var bG=qx.bom.Event.getTarget(bE);
var bF=this.__gO(bG);

if(bF){this.setFocus(bF);
}else{qx.bom.Event.preventDefault(bE);
}},"opera":function(bH){var bK=qx.bom.Event.getTarget(bH);
var bI=this.__gO(bK);

if(!this.__gQ(bK)){qx.bom.Event.preventDefault(bH);
if(bI){var bJ=this.getFocus();

if(bJ&&bJ.selectionEnd){bJ.selectionStart=0;
bJ.selectionEnd=0;
bJ.blur();
}if(bI){this.setFocus(bI);
}}}else if(bI){this.setFocus(bI);
}},"default":null})),__gK:qx.event.GlobalError.observeMethod(qx.core.Environment.select(j,{"mshtml":function(bL){var bM=qx.bom.Event.getTarget(bL);

if(bM.unselectable){bM.unselectable=p;
}this.tryActivate(this.__gL(bM));
},"gecko":function(bN){var bO=qx.bom.Event.getTarget(bN);

while(bO&&bO.offsetWidth===undefined){bO=bO.parentNode;
}
if(bO){this.tryActivate(bO);
}},"webkit|opera":function(bP){var bQ=qx.bom.Event.getTarget(bP);
this.tryActivate(this.__gL(bQ));
},"default":null})),__gL:qx.event.GlobalError.observeMethod(qx.core.Environment.select(j,{"mshtml|webkit":function(bR){var bS=this.getFocus();

if(bS&&bR!=bS&&(bS.nodeName.toLowerCase()===r||bS.nodeName.toLowerCase()===u)){bR=bS;
}return bR;
},"default":function(bT){return bT;
}})),__gM:qx.event.GlobalError.observeMethod(qx.core.Environment.select(j,{"mshtml|webkit":function(bU){var bV=qx.bom.Event.getTarget(bU);

if(!this.__gQ(bV)){qx.bom.Event.preventDefault(bU);
}},"default":null})),__gN:function(bW){var bX=qx.bom.element.Attribute.get(bW,o);

if(bX>=1){return true;
}var bY=qx.event.handler.Focus.FOCUSABLE_ELEMENTS;

if(bX>=0&&bY[bW.tagName]){return true;
}return false;
},__gO:function(ca){while(ca&&ca.nodeType===1){if(ca.getAttribute(k)==e){return null;
}
if(this.__gN(ca)){return ca;
}ca=ca.parentNode;
}return this._body;
},__gP:function(cb){var cc=cb;

while(cb&&cb.nodeType===1){if(cb.getAttribute(l)==e){return null;
}cb=cb.parentNode;
}return cc;
},__gQ:function(cd){while(cd&&cd.nodeType===1){var ce=cd.getAttribute(q);

if(ce!=null){return ce===e;
}cd=cd.parentNode;
}return true;
},_applyActive:function(cf,cg){if(cg){this.__fG(cg,cf,v,true);
}
if(cf){this.__fG(cf,cg,m,true);
}},_applyFocus:function(ch,ci){if(ci){this.__fG(ci,ch,a,true);
}
if(ch){this.__fG(ch,ci,b,true);
}if(ci){this.__fG(ci,ch,g,false);
}
if(ch){this.__fG(ch,ci,f,false);
}}},destruct:function(){this._stopObserver();
this._manager=this._window=this._document=this._root=this._body=this.__gR=null;
},defer:function(cj){qx.event.Registration.addHandler(cj);
var ck=cj.FOCUSABLE_ELEMENTS;

for(var cl in ck){ck[cl.toUpperCase()]=1;
}}});
})();
(function(){var k="engine.name",j="character",i="EndToEnd",h="input",g="StartToStart",f="textarea",e='character',d="qx.bom.Selection",c="button",b="#text",a="body";
qx.Class.define(d,{statics:{getSelectionObject:qx.core.Environment.select(k,{"mshtml":function(l){return l.selection;
},"default":function(m){return qx.dom.Node.getWindow(m).getSelection();
}}),get:qx.core.Environment.select(k,{"mshtml":function(n){var o=qx.bom.Range.get(qx.dom.Node.getDocument(n));
return o.text;
},"default":function(p){if(this.__gS(p)){return p.value.substring(p.selectionStart,p.selectionEnd);
}else{return this.getSelectionObject(qx.dom.Node.getDocument(p)).toString();
}}}),getLength:qx.core.Environment.select(k,{"mshtml":function(q){var s=this.get(q);
var r=qx.util.StringSplit.split(s,/\r\n/);
return s.length-(r.length-1);
},"opera":function(t){var y,w,u;

if(this.__gS(t)){var x=t.selectionStart;
var v=t.selectionEnd;
y=t.value.substring(x,v);
w=v-x;
}else{y=qx.bom.Selection.get(t);
w=y.length;
}u=qx.util.StringSplit.split(y,/\r\n/);
return w-(u.length-1);
},"default":function(z){if(this.__gS(z)){return z.selectionEnd-z.selectionStart;
}else{return this.get(z).length;
}}}),getStart:qx.core.Environment.select(k,{"mshtml":function(A){if(this.__gS(A)){var F=qx.bom.Range.get();
if(!A.contains(F.parentElement())){return -1;
}var G=qx.bom.Range.get(A);
var E=A.value.length;
G.moveToBookmark(F.getBookmark());
G.moveEnd(e,E);
return E-G.text.length;
}else{var G=qx.bom.Range.get(A);
var C=G.parentElement();
var H=qx.bom.Range.get();

try{H.moveToElementText(C);
}catch(J){return 0;
}var B=qx.bom.Range.get(qx.dom.Node.getBodyElement(A));
B.setEndPoint(g,G);
B.setEndPoint(i,H);
if(H.compareEndPoints(g,B)==0){return 0;
}var D;
var I=0;

while(true){D=B.moveStart(j,-1);
if(H.compareEndPoints(g,B)==0){break;
}if(D==0){break;
}else{I++;
}}return ++I;
}},"gecko|webkit":function(K){if(this.__gS(K)){return K.selectionStart;
}else{var M=qx.dom.Node.getDocument(K);
var L=this.getSelectionObject(M);
if(L.anchorOffset<L.focusOffset){return L.anchorOffset;
}else{return L.focusOffset;
}}},"default":function(N){if(this.__gS(N)){return N.selectionStart;
}else{return qx.bom.Selection.getSelectionObject(qx.dom.Node.getDocument(N)).anchorOffset;
}}}),getEnd:qx.core.Environment.select(k,{"mshtml":function(O){if(this.__gS(O)){var T=qx.bom.Range.get();
if(!O.contains(T.parentElement())){return -1;
}var U=qx.bom.Range.get(O);
var S=O.value.length;
U.moveToBookmark(T.getBookmark());
U.moveStart(e,-S);
return U.text.length;
}else{var U=qx.bom.Range.get(O);
var Q=U.parentElement();
var V=qx.bom.Range.get();

try{V.moveToElementText(Q);
}catch(X){return 0;
}var S=V.text.length;
var P=qx.bom.Range.get(qx.dom.Node.getBodyElement(O));
P.setEndPoint(i,U);
P.setEndPoint(g,V);
if(V.compareEndPoints(i,P)==0){return S-1;
}var R;
var W=0;

while(true){R=P.moveEnd(j,1);
if(V.compareEndPoints(i,P)==0){break;
}if(R==0){break;
}else{W++;
}}return S-(++W);
}},"gecko|webkit":function(Y){if(this.__gS(Y)){return Y.selectionEnd;
}else{var bb=qx.dom.Node.getDocument(Y);
var ba=this.getSelectionObject(bb);
if(ba.focusOffset>ba.anchorOffset){return ba.focusOffset;
}else{return ba.anchorOffset;
}}},"default":function(bc){if(this.__gS(bc)){return bc.selectionEnd;
}else{return qx.bom.Selection.getSelectionObject(qx.dom.Node.getDocument(bc)).focusOffset;
}}}),__gS:function(bd){return qx.dom.Node.isElement(bd)&&(bd.nodeName.toLowerCase()==h||bd.nodeName.toLowerCase()==f);
},set:qx.core.Environment.select(k,{"mshtml":function(be,bf,bg){var bh;
if(qx.dom.Node.isDocument(be)){be=be.body;
}
if(qx.dom.Node.isElement(be)||qx.dom.Node.isText(be)){switch(be.nodeName.toLowerCase()){case h:case f:case c:if(bg===undefined){bg=be.value.length;
}
if(bf>=0&&bf<=be.value.length&&bg>=0&&bg<=be.value.length){bh=qx.bom.Range.get(be);
bh.collapse(true);
bh.moveStart(j,bf);
bh.moveEnd(j,bg-bf);
bh.select();
return true;
}break;
case b:if(bg===undefined){bg=be.nodeValue.length;
}
if(bf>=0&&bf<=be.nodeValue.length&&bg>=0&&bg<=be.nodeValue.length){bh=qx.bom.Range.get(qx.dom.Node.getBodyElement(be));
bh.moveToElementText(be.parentNode);
bh.collapse(true);
bh.moveStart(j,bf);
bh.moveEnd(j,bg-bf);
bh.select();
return true;
}break;
default:if(bg===undefined){bg=be.childNodes.length-1;
}if(be.childNodes[bf]&&be.childNodes[bg]){bh=qx.bom.Range.get(qx.dom.Node.getBodyElement(be));
bh.moveToElementText(be.childNodes[bf]);
bh.collapse(true);
var bi=qx.bom.Range.get(qx.dom.Node.getBodyElement(be));
bi.moveToElementText(be.childNodes[bg]);
bh.setEndPoint(i,bi);
bh.select();
return true;
}}}return false;
},"default":function(bj,bk,bl){var bp=bj.nodeName.toLowerCase();

if(qx.dom.Node.isElement(bj)&&(bp==h||bp==f)){if(bl===undefined){bl=bj.value.length;
}if(bk>=0&&bk<=bj.value.length&&bl>=0&&bl<=bj.value.length){bj.focus();
bj.select();
bj.setSelectionRange(bk,bl);
return true;
}}else{var bn=false;
var bo=qx.dom.Node.getWindow(bj).getSelection();
var bm=qx.bom.Range.get(bj);
if(qx.dom.Node.isText(bj)){if(bl===undefined){bl=bj.length;
}
if(bk>=0&&bk<bj.length&&bl>=0&&bl<=bj.length){bn=true;
}}else if(qx.dom.Node.isElement(bj)){if(bl===undefined){bl=bj.childNodes.length-1;
}
if(bk>=0&&bj.childNodes[bk]&&bl>=0&&bj.childNodes[bl]){bn=true;
}}else if(qx.dom.Node.isDocument(bj)){bj=bj.body;

if(bl===undefined){bl=bj.childNodes.length-1;
}
if(bk>=0&&bj.childNodes[bk]&&bl>=0&&bj.childNodes[bl]){bn=true;
}}
if(bn){if(!bo.isCollapsed){bo.collapseToStart();
}bm.setStart(bj,bk);
if(qx.dom.Node.isText(bj)){bm.setEnd(bj,bl);
}else{bm.setEndAfter(bj.childNodes[bl]);
}if(bo.rangeCount>0){bo.removeAllRanges();
}bo.addRange(bm);
return true;
}}return false;
}}),setAll:function(bq){return qx.bom.Selection.set(bq,0);
},clear:qx.core.Environment.select(k,{"mshtml":function(br){var bs=qx.bom.Selection.getSelectionObject(qx.dom.Node.getDocument(br));
var bt=qx.bom.Range.get(br);
var parent=bt.parentElement();
var bu=qx.bom.Range.get(qx.dom.Node.getDocument(br));
if(parent==bu.parentElement()&&parent==br){bs.empty();
}},"default":function(bv){var bx=qx.bom.Selection.getSelectionObject(qx.dom.Node.getDocument(bv));
var bz=bv.nodeName.toLowerCase();
if(qx.dom.Node.isElement(bv)&&(bz==h||bz==f)){bv.setSelectionRange(0,0);
qx.bom.Element.blur(bv);
}else if(qx.dom.Node.isDocument(bv)||bz==a){bx.collapse(bv.body?bv.body:bv,0);
}else{var by=qx.bom.Range.get(bv);

if(!by.collapsed){var bA;
var bw=by.commonAncestorContainer;
if(qx.dom.Node.isElement(bv)&&qx.dom.Node.isText(bw)){bA=bw.parentNode;
}else{bA=bw;
}
if(bA==bv){bx.collapse(bv,0);
}}}}})}});
})();
(function(){var l="button",k="qx.bom.Range",j="text",i="engine.name",h="password",g="file",f="submit",e="reset",d="textarea",c="input",a="hidden",b="body";
qx.Class.define(k,{statics:{get:qx.core.Environment.select(i,{"mshtml":function(m){if(qx.dom.Node.isElement(m)){switch(m.nodeName.toLowerCase()){case c:switch(m.type){case j:case h:case a:case l:case e:case g:case f:return m.createTextRange();
break;
default:return qx.bom.Selection.getSelectionObject(qx.dom.Node.getDocument(m)).createRange();
}break;
case d:case b:case l:return m.createTextRange();
break;
default:return qx.bom.Selection.getSelectionObject(qx.dom.Node.getDocument(m)).createRange();
}}else{if(m==null){m=window;
}return qx.bom.Selection.getSelectionObject(qx.dom.Node.getDocument(m)).createRange();
}},"default":function(n){var o=qx.dom.Node.getDocument(n);
var p=qx.bom.Selection.getSelectionObject(o);

if(p.rangeCount>0){return p.getRangeAt(0);
}else{return o.createRange();
}}})}});
})();
(function(){var j="",h="m",g="g",f="^",e="qx.util.StringSplit",d="i",c="$(?!\\s)",b="[object RegExp]",a="y";
qx.Class.define(e,{statics:{split:function(k,l,m){if(Object.prototype.toString.call(l)!==b){return String.prototype.split.call(k,l,m);
}var t=[],n=0,r=(l.ignoreCase?d:j)+(l.multiline?h:j)+(l.sticky?a:j),l=RegExp(l.source,r+g),q,u,o,p,s=/()??/.exec(j)[1]===undefined;
k=k+j;

if(!s){q=RegExp(f+l.source+c,r);
}if(m===undefined||+m<0){m=Infinity;
}else{m=Math.floor(+m);

if(!m){return [];
}}
while(u=l.exec(k)){o=u.index+u[0].length;

if(o>n){t.push(k.slice(n,u.index));
if(!s&&u.length>1){u[0].replace(q,function(){for(var i=1;i<arguments.length-2;i++){if(arguments[i]===undefined){u[i]=undefined;
}}});
}
if(u.length>1&&u.index<k.length){Array.prototype.push.apply(t,u.slice(1));
}p=u[0].length;
n=o;

if(t.length>=m){break;
}}
if(l.lastIndex===u.index){l.lastIndex++;
}}
if(n===k.length){if(p||!l.test(j)){t.push(j);
}}else{t.push(k.slice(n));
}return t.length>m?t.slice(0,m):t;
}}});
})();
(function(){var k="alias",j="copy",i="blur",h="mouseout",g="keydown",f="Control",d="Shift",c="mousemove",b="move",a="mouseover",C="Alt",B="keyup",A="mouseup",z="keypress",y="dragend",x="on",w="mousedown",v="qxDraggable",u="Escape",t="drag",r="drop",s="qxDroppable",p="qx.event.handler.DragDrop",q="droprequest",n="dragstart",o="dragchange",l="dragleave",m="dragover";
qx.Class.define(p,{extend:qx.core.Object,implement:qx.event.IEventHandler,construct:function(D){qx.core.Object.call(this);
this.__eJ=D;
this.__cX=D.getWindow().document.documentElement;
this.__eJ.addListener(this.__cX,w,this._onMouseDown,this);
this.__he();
},statics:{PRIORITY:qx.event.Registration.PRIORITY_NORMAL,SUPPORTED_TYPES:{dragstart:1,dragend:1,dragover:1,dragleave:1,drop:1,drag:1,dragchange:1,droprequest:1},IGNORE_CAN_HANDLE:true},members:{__eJ:null,__cX:null,__gT:null,__gU:null,__gV:null,__gW:null,__gX:null,__c:null,__gY:null,__ha:null,__hb:false,__hc:0,__hd:0,canHandleEvent:function(E,F){},registerEvent:function(G,H,I){},unregisterEvent:function(J,K,L){},addType:function(M){this.__gV[M]=true;
},addAction:function(N){this.__gW[N]=true;
},supportsType:function(O){return !!this.__gV[O];
},supportsAction:function(P){return !!this.__gW[P];
},getData:function(Q){if(!this.__hk||!this.__gT){throw new Error("This method must not be used outside the drop event listener!");
}
if(!this.__gV[Q]){throw new Error("Unsupported data type: "+Q+"!");
}
if(!this.__c[Q]){this.__gY=Q;
this.__fG(q,this.__gU,this.__gT,false);
}
if(!this.__c[Q]){throw new Error("Please use a droprequest listener to the drag source to fill the manager with data!");
}return this.__c[Q]||null;
},getCurrentAction:function(){return this.__ha;
},addData:function(R,S){this.__c[R]=S;
},getCurrentType:function(){return this.__gY;
},isSessionActive:function(){return this.__hb;
},__he:function(){this.__gV={};
this.__gW={};
this.__gX={};
this.__c={};
},__hf:function(){if(this.__gU==null){return;
}var V=this.__gW;
var T=this.__gX;
var U=null;

if(this.__hk){if(T.Shift&&T.Control&&V.alias){U=k;
}else if(T.Shift&&T.Alt&&V.copy){U=j;
}else if(T.Shift&&V.move){U=b;
}else if(T.Alt&&V.alias){U=k;
}else if(T.Control&&V.copy){U=j;
}else if(V.move){U=b;
}else if(V.copy){U=j;
}else if(V.alias){U=k;
}}
if(U!=this.__ha){this.__ha=U;
this.__fG(o,this.__gU,this.__gT,false);
}},__fG:function(W,X,Y,ba,bb){var bd=qx.event.Registration;
var bc=bd.createEvent(W,qx.event.type.Drag,[ba,bb]);

if(X!==Y){bc.setRelatedTarget(Y);
}return bd.dispatchEvent(X,bc);
},__hg:function(be){while(be&&be.nodeType==1){if(be.getAttribute(v)==x){return be;
}be=be.parentNode;
}return null;
},__hh:function(bf){while(bf&&bf.nodeType==1){if(bf.getAttribute(s)==x){return bf;
}bf=bf.parentNode;
}return null;
},__hi:function(){this.__gU=null;
this.__eJ.removeListener(this.__cX,c,this._onMouseMove,this,true);
this.__eJ.removeListener(this.__cX,A,this._onMouseUp,this,true);
qx.event.Registration.removeListener(window,i,this._onWindowBlur,this);
this.__he();
},__hj:function(){if(this.__hb){this.__eJ.removeListener(this.__cX,a,this._onMouseOver,this,true);
this.__eJ.removeListener(this.__cX,h,this._onMouseOut,this,true);
this.__eJ.removeListener(this.__cX,g,this._onKeyDown,this,true);
this.__eJ.removeListener(this.__cX,B,this._onKeyUp,this,true);
this.__eJ.removeListener(this.__cX,z,this._onKeyPress,this,true);
this.__fG(y,this.__gU,this.__gT,false);
this.__hb=false;
}this.__hk=false;
this.__gT=null;
this.__hi();
},__hk:false,_onWindowBlur:function(e){this.__hj();
},_onKeyDown:function(e){var bg=e.getKeyIdentifier();

switch(bg){case C:case f:case d:if(!this.__gX[bg]){this.__gX[bg]=true;
this.__hf();
}}},_onKeyUp:function(e){var bh=e.getKeyIdentifier();

switch(bh){case C:case f:case d:if(this.__gX[bh]){this.__gX[bh]=false;
this.__hf();
}}},_onKeyPress:function(e){var bi=e.getKeyIdentifier();

switch(bi){case u:this.__hj();
}},_onMouseDown:function(e){if(this.__hb){return;
}var bj=this.__hg(e.getTarget());

if(bj){this.__hc=e.getDocumentLeft();
this.__hd=e.getDocumentTop();
this.__gU=bj;
this.__eJ.addListener(this.__cX,c,this._onMouseMove,this,true);
this.__eJ.addListener(this.__cX,A,this._onMouseUp,this,true);
qx.event.Registration.addListener(window,i,this._onWindowBlur,this);
}},_onMouseUp:function(e){if(this.__hk){this.__fG(r,this.__gT,this.__gU,false,e);
}if(this.__hb){e.stopPropagation();
}this.__hj();
},_onMouseMove:function(e){if(this.__hb){if(!this.__fG(t,this.__gU,this.__gT,true,e)){this.__hj();
}}else{if(Math.abs(e.getDocumentLeft()-this.__hc)>3||Math.abs(e.getDocumentTop()-this.__hd)>3){if(this.__fG(n,this.__gU,this.__gT,true,e)){this.__hb=true;
this.__eJ.addListener(this.__cX,a,this._onMouseOver,this,true);
this.__eJ.addListener(this.__cX,h,this._onMouseOut,this,true);
this.__eJ.addListener(this.__cX,g,this._onKeyDown,this,true);
this.__eJ.addListener(this.__cX,B,this._onKeyUp,this,true);
this.__eJ.addListener(this.__cX,z,this._onKeyPress,this,true);
var bk=this.__gX;
bk.Control=e.isCtrlPressed();
bk.Shift=e.isShiftPressed();
bk.Alt=e.isAltPressed();
this.__hf();
}else{this.__fG(y,this.__gU,this.__gT,false);
this.__hi();
}}}},_onMouseOver:function(e){var bl=e.getTarget();
var bm=this.__hh(bl);

if(bm&&bm!=this.__gT){this.__hk=this.__fG(m,bm,this.__gU,true,e);
this.__gT=bm;
this.__hf();
}},_onMouseOut:function(e){var bo=this.__hh(e.getTarget());
var bn=this.__hh(e.getRelatedTarget());

if(bo&&bo!==bn&&bo==this.__gT){this.__fG(l,this.__gT,bn,false,e);
this.__gT=null;
this.__hk=false;
qx.event.Timer.once(this.__hf,this,0);
}}},destruct:function(){this.__gU=this.__gT=this.__eJ=this.__cX=this.__gV=this.__gW=this.__gX=this.__c=null;
},defer:function(bp){qx.event.Registration.addHandler(bp);
}});
})();
(function(){var a="qx.event.type.Drag";
qx.Class.define(a,{extend:qx.event.type.Event,members:{init:function(b,c){qx.event.type.Event.prototype.init.call(this,true,b);

if(c){this._native=c.getNativeEvent()||null;
this._originalTarget=c.getTarget()||null;
}else{this._native=null;
this._originalTarget=null;
}return this;
},clone:function(d){var e=qx.event.type.Event.prototype.clone.call(this,d);
e._native=this._native;
return e;
},getDocumentLeft:function(){if(this._native==null){return 0;
}
if(this._native.pageX!==undefined){return this._native.pageX;
}else{var f=qx.dom.Node.getWindow(this._native.srcElement);
return this._native.clientX+qx.bom.Viewport.getScrollLeft(f);
}},getDocumentTop:function(){if(this._native==null){return 0;
}
if(this._native.pageY!==undefined){return this._native.pageY;
}else{var g=qx.dom.Node.getWindow(this._native.srcElement);
return this._native.clientY+qx.bom.Viewport.getScrollTop(g);
}},getManager:function(){return qx.event.Registration.getManager(this.getTarget()).getHandler(qx.event.handler.DragDrop);
},addType:function(h){this.getManager().addType(h);
},addAction:function(i){this.getManager().addAction(i);
},supportsType:function(j){return this.getManager().supportsType(j);
},supportsAction:function(k){return this.getManager().supportsAction(k);
},addData:function(l,m){this.getManager().addData(l,m);
},getData:function(n){return this.getManager().getData(n);
},getCurrentType:function(){return this.getManager().getCurrentType();
},getCurrentAction:function(){return this.getManager().getCurrentAction();
}}});
})();
(function(){var c="offline",b="online",a="qx.event.handler.Offline";
qx.Class.define(a,{extend:qx.core.Object,implement:qx.event.IEventHandler,construct:function(d){qx.core.Object.call(this);
this.__eJ=d;
this.__cv=d.getWindow();
this._initObserver();
},statics:{PRIORITY:qx.event.Registration.PRIORITY_NORMAL,SUPPORTED_TYPES:{online:true,offline:true},TARGET_CHECK:qx.event.IEventHandler.TARGET_WINDOW,IGNORE_CAN_HANDLE:true},members:{__eJ:null,__cv:null,__fu:null,canHandleEvent:function(e,f){},registerEvent:function(g,h,i){},unregisterEvent:function(j,k,l){},_initObserver:function(){this.__fu=qx.lang.Function.listener(this._onNative,this);
qx.bom.Event.addNativeListener(this.__cv,c,this.__fu);
qx.bom.Event.addNativeListener(this.__cv,b,this.__fu);
},_stopObserver:function(){qx.bom.Event.removeNativeListener(this.__cv,c,this.__fu);
qx.bom.Event.removeNativeListener(this.__cv,b,this.__fu);
},_onNative:qx.event.GlobalError.observeMethod(function(m){qx.event.Registration.fireEvent(this.__cv,m.type,qx.event.type.Event,[]);
}),isOnline:function(){return !!this.__cv.navigator.onLine;
}},destruct:function(){this.__eJ=null;
this._stopObserver();
delete qx.event.handler.Appear.__instances[this.$$hash];
},defer:function(n){qx.event.Registration.addHandler(n);
}});
})();
(function(){var r="engine.name",q="mshtml",p="",o=" ",n=">",m="<",k="='",h="none",g="<INPUT TYPE='RADIO' NAME='RADIOTEST' VALUE='Second Choice'>",f="qx.bom.Element",b="webkit",d="' ",c="div",a="></";
qx.Class.define(f,{statics:{__hl:{"onload":true,"onpropertychange":true,"oninput":true,"onchange":true,"name":true,"type":true,"checked":true,"disabled":true},__hm:{},__hn:{},allowCreationWithMarkup:function(s){if(!s){s=window;
}var t=s.location.href;

if(qx.bom.Element.__hn[t]==undefined){try{s.document.createElement(g);
qx.bom.Element.__hn[t]=true;
}catch(e){qx.bom.Element.__hn[t]=false;
}}return qx.bom.Element.__hn[t];
},getHelperElement:function(u){if(!u){u=window;
}var w=u.location.href;

if(!qx.bom.Element.__hm[w]){var v=qx.bom.Element.__hm[w]=u.document.createElement(c);
if(qx.core.Environment.get(r)==b){v.style.display=h;
u.document.body.appendChild(v);
}}return qx.bom.Element.__hm[w];
},create:function(name,x,y){if(!y){y=window;
}
if(!name){throw new Error("The tag name is missing!");
}var A=this.__hl;
var z=p;

for(var C in x){if(A[C]){z+=C+k+x[C]+d;
}}var D;
if(z!=p){if(qx.bom.Element.allowCreationWithMarkup(y)){D=y.document.createElement(m+name+o+z+n);
}else{var B=qx.bom.Element.getHelperElement(y);
B.innerHTML=m+name+o+z+a+name+n;
D=B.firstChild;
}}else{D=y.document.createElement(name);
}
for(var C in x){if(!A[C]){qx.bom.element.Attribute.set(D,C,x[C]);
}}return D;
},empty:function(E){return E.innerHTML=p;
},addListener:function(F,G,H,self,I){return qx.event.Registration.addListener(F,G,H,self,I);
},removeListener:function(J,K,L,self,M){return qx.event.Registration.removeListener(J,K,L,self,M);
},removeListenerById:function(N,O){return qx.event.Registration.removeListenerById(N,O);
},hasListener:function(P,Q,R){return qx.event.Registration.hasListener(P,Q,R);
},focus:function(S){qx.event.Registration.getManager(S).getHandler(qx.event.handler.Focus).focus(S);
},blur:function(T){qx.event.Registration.getManager(T).getHandler(qx.event.handler.Focus).blur(T);
},activate:function(U){qx.event.Registration.getManager(U).getHandler(qx.event.handler.Focus).activate(U);
},deactivate:function(V){qx.event.Registration.getManager(V).getHandler(qx.event.handler.Focus).deactivate(V);
},capture:function(W,X){qx.event.Registration.getManager(W).getDispatcher(qx.event.dispatch.MouseCapture).activateCapture(W,X);
},releaseCapture:function(Y){qx.event.Registration.getManager(Y).getDispatcher(qx.event.dispatch.MouseCapture).releaseCapture(Y);
},matchesSelector:function(ba,bb){if(bb){return qx.bom.Selector.query(bb,ba.parentNode).length>0;
}else{return false;
}},clone:function(bc,bd){var bg;

if(bd||((qx.core.Environment.get(r)==q)&&!qx.xml.Document.isXmlDocument(bc))){var bk=qx.event.Registration.getManager(bc);
var be=qx.dom.Hierarchy.getDescendants(bc);
be.push(bc);
}if((qx.core.Environment.get(r)==q)){for(var i=0,l=be.length;i<l;i++){bk.toggleAttachedEvents(be[i],false);
}}var bg=bc.cloneNode(true);
if((qx.core.Environment.get(r)==q)){for(var i=0,l=be.length;i<l;i++){bk.toggleAttachedEvents(be[i],true);
}}if(bd===true){var bn=qx.dom.Hierarchy.getDescendants(bg);
bn.push(bg);
var bf,bi,bm,bh;

for(var i=0,bl=be.length;i<bl;i++){bm=be[i];
bf=bk.serializeListeners(bm);

if(bf.length>0){bi=bn[i];

for(var j=0,bj=bf.length;j<bj;j++){bh=bf[j];
bk.addListener(bi,bh.type,bh.handler,bh.self,bh.capture);
}}}}return bg;
}}});
})();
(function(){var j="",i="undefined",h="engine.name",g="readOnly",f="accessKey",e="qx.bom.element.Attribute",d="rowSpan",c="vAlign",b="className",a="textContent",y="'",x="htmlFor",w="longDesc",v="cellSpacing",u="frameBorder",t="='",s="useMap",r="innerText",q="innerHTML",p="tabIndex",n="dateTime",o="maxLength",l="mshtml",m="cellPadding",k="colSpan";
qx.Class.define(e,{statics:{__ho:{names:{"class":b,"for":x,html:q,text:(qx.core.Environment.get(h)==l)?r:a,colspan:k,rowspan:d,valign:c,datetime:n,accesskey:f,tabindex:p,maxlength:o,readonly:g,longdesc:w,cellpadding:m,cellspacing:v,frameborder:u,usemap:s},runtime:{"html":1,"text":1},bools:{compact:1,nowrap:1,ismap:1,declare:1,noshade:1,checked:1,disabled:1,readOnly:1,multiple:1,selected:1,noresize:1,defer:1,allowTransparency:1},property:{$$html:1,$$widget:1,disabled:1,checked:1,readOnly:1,multiple:1,selected:1,value:1,maxLength:1,className:1,innerHTML:1,innerText:1,textContent:1,htmlFor:1,tabIndex:1},qxProperties:{$$widget:1,$$html:1},propertyDefault:{disabled:false,checked:false,readOnly:false,multiple:false,selected:false,value:j,className:j,innerHTML:j,innerText:j,textContent:j,htmlFor:j,tabIndex:0,maxLength:qx.core.Environment.select(h,{"mshtml":2147483647,"webkit":524288,"default":-1})},removeableProperties:{disabled:1,multiple:1,maxLength:1},original:{href:1,src:1,type:1}},compile:function(z){var A=[];
var C=this.__ho.runtime;

for(var B in z){if(!C[B]){A.push(B,t,z[B],y);
}}return A.join(j);
},get:qx.core.Environment.select(h,{"mshtml":function(D,name){var F=this.__ho;
var E;
name=F.names[name]||name;
if(F.original[name]){E=D.getAttribute(name,2);
}else if(F.property[name]){E=D[name];

if(typeof F.propertyDefault[name]!==i&&E==F.propertyDefault[name]){if(typeof F.bools[name]===i){return null;
}else{return E;
}}}else{E=D.getAttribute(name);
}if(F.bools[name]){return !!E;
}return E;
},"default":function(G,name){var I=this.__ho;
var H;
name=I.names[name]||name;
if(I.property[name]){H=G[name];

if(typeof I.propertyDefault[name]!==i&&H==I.propertyDefault[name]){if(typeof I.bools[name]===i){return null;
}else{return H;
}}}else{H=G.getAttribute(name);
}if(I.bools[name]){return !!H;
}return H;
}}),set:function(J,name,K){if(typeof K===i){return;
}var L=this.__ho;
name=L.names[name]||name;
if(L.bools[name]){K=!!K;
}if(L.property[name]&&(!(J[name]===undefined)||L.qxProperties[name])){if(K==null){if(L.removeableProperties[name]){J.removeAttribute(name);
return;
}else if(typeof L.propertyDefault[name]!==i){K=L.propertyDefault[name];
}}J[name]=K;
}else{if(K===true){J.setAttribute(name,name);
}else if(K===false||K===null){J.removeAttribute(name);
}else{J.setAttribute(name,K);
}}},reset:function(M,name){this.set(M,name,null);
}}});
})();
(function(){var i="engine.name",h="losecapture",g="mshtml",f="blur",e="focus",d="click",c="qx.event.dispatch.MouseCapture",b="capture",a="scroll";
qx.Class.define(c,{extend:qx.event.dispatch.AbstractBubbling,construct:function(j,k){qx.event.dispatch.AbstractBubbling.call(this,j);
this.__cv=j.getWindow();
this.__cx=k;
j.addListener(this.__cv,f,this.releaseCapture,this);
j.addListener(this.__cv,e,this.releaseCapture,this);
j.addListener(this.__cv,a,this.releaseCapture,this);
},statics:{PRIORITY:qx.event.Registration.PRIORITY_FIRST},members:{__cx:null,__hp:null,__hq:true,__cv:null,_getParent:function(l){return l.parentNode;
},canDispatchEvent:function(m,event,n){return !!(this.__hp&&this.__hr[n]);
},dispatchEvent:function(o,event,p){if(p==d){event.stopPropagation();
this.releaseCapture();
return;
}
if(this.__hq||!qx.dom.Hierarchy.contains(this.__hp,o)){o=this.__hp;
}qx.event.dispatch.AbstractBubbling.prototype.dispatchEvent.call(this,o,event,p);
},__hr:{"mouseup":1,"mousedown":1,"click":1,"dblclick":1,"mousemove":1,"mouseout":1,"mouseover":1},activateCapture:function(q,r){var r=r!==false;

if(this.__hp===q&&this.__hq==r){return;
}
if(this.__hp){this.releaseCapture();
}this.nativeSetCapture(q,r);

if(this.hasNativeCapture){var self=this;
qx.bom.Event.addNativeListener(q,h,function(){qx.bom.Event.removeNativeListener(q,h,arguments.callee);
self.releaseCapture();
});
}this.__hq=r;
this.__hp=q;
this.__cx.fireEvent(q,b,qx.event.type.Event,[true,false]);
},getCaptureElement:function(){return this.__hp;
},releaseCapture:function(){var s=this.__hp;

if(!s){return;
}this.__hp=null;
this.__cx.fireEvent(s,h,qx.event.type.Event,[true,false]);
this.nativeReleaseCapture(s);
},hasNativeCapture:qx.core.Environment.get(i)==g,nativeSetCapture:qx.core.Environment.select(i,{"mshtml":function(t,u){t.setCapture(u!==false);
},"default":qx.lang.Function.empty}),nativeReleaseCapture:qx.core.Environment.select(i,{"mshtml":function(v){v.releaseCapture();
},"default":qx.lang.Function.empty})},destruct:function(){this.__hp=this.__cv=this.__cx=null;
},defer:function(w){qx.event.Registration.addDispatcher(w);
}});
})();
(function(){var c="qx.bom.Selector";
qx.Class.define(c,{statics:{query:null,matches:null}});
(function(){var o=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,v=0,x=Object.prototype.toString,p=false,z=true,t=/\\/g,g=/\W/;
[0,0].sort(function(){z=false;
return 0;
});
var s=function(B,C,D,E){D=D||[];
C=C||document;
var N=C;

if(C.nodeType!==1&&C.nodeType!==9){return [];
}
if(!B||typeof B!=="string"){return D;
}var m,H,F,J,L,I,O,i,P=true,G=s.isXML(C),K=[],M=B;
do{o.exec("");
m=o.exec(M);

if(m){M=m[3];
K.push(m[1]);

if(m[2]){J=m[3];
break;
}}}while(m);

if(K.length>1&&q.exec(B)){if(K.length===2&&k.relative[K[0]]){H=h(K[0]+K[1],C);
}else{H=k.relative[K[0]]?[C]:s(K.shift(),C);

while(K.length){B=K.shift();

if(k.relative[B]){B+=K.shift();
}H=h(B,H);
}}}else{if(!E&&K.length>1&&C.nodeType===9&&!G&&k.match.ID.test(K[0])&&!k.match.ID.test(K[K.length-1])){L=s.find(K.shift(),C,G);
C=L.expr?s.filter(L.expr,L.set)[0]:L.set[0];
}
if(C){L=E?{expr:K.pop(),set:f(E)}:s.find(K.pop(),K.length===1&&(K[0]==="~"||K[0]==="+")&&C.parentNode?C.parentNode:C,G);
H=L.expr?s.filter(L.expr,L.set):L.set;

if(K.length>0){F=f(H);
}else{P=false;
}
while(K.length){I=K.pop();
O=I;

if(!k.relative[I]){I="";
}else{O=K.pop();
}
if(O==null){O=C;
}k.relative[I](F,O,G);
}}else{F=K=[];
}}
if(!F){F=H;
}
if(!F){s.error(I||B);
}
if(x.call(F)==="[object Array]"){if(!P){D.push.apply(D,F);
}else if(C&&C.nodeType===1){for(i=0;F[i]!=null;i++){if(F[i]&&(F[i]===true||F[i].nodeType===1&&s.contains(C,F[i]))){D.push(H[i]);
}}}else{for(i=0;F[i]!=null;i++){if(F[i]&&F[i].nodeType===1){D.push(H[i]);
}}}}else{f(F,D);
}
if(J){s(J,N,D,E);
s.uniqueSort(D);
}return D;
};
s.uniqueSort=function(Q){if(u){p=z;
Q.sort(u);

if(p){for(var i=1;i<Q.length;i++){if(Q[i]===Q[i-1]){Q.splice(i--,1);
}}}}return Q;
};
s.matches=function(R,S){return s(R,null,null,S);
};
s.matchesSelector=function(T,U){return s(U,null,null,[T]).length>0;
};
s.find=function(V,W,X){var Y;

if(!V){return [];
}
for(var i=0,l=k.order.length;i<l;i++){var bb,ba=k.order[i];

if((bb=k.leftMatch[ba].exec(V))){var bc=bb[1];
bb.splice(1,1);

if(bc.substr(bc.length-1)!=="\\"){bb[1]=(bb[1]||"").replace(t,"");
Y=k.find[ba](bb,W,X);

if(Y!=null){V=V.replace(k.match[ba],"");
break;
}}}}
if(!Y){Y=typeof W.getElementsByTagName!=="undefined"?W.getElementsByTagName("*"):[];
}return {set:Y,expr:V};
};
s.filter=function(bd,be,bf,bg){var bt,bs,bh=bd,bn=[],bi=be,bj=be&&be[0]&&s.isXML(be[0]);

while(bd&&be.length){for(var br in k.filter){if((bt=k.leftMatch[br].exec(bd))!=null&&bt[2]){var bq,bm,bk=k.filter[br],bu=bt[1];
bs=false;
bt.splice(1,1);

if(bu.substr(bu.length-1)==="\\"){continue;
}
if(bi===bn){bn=[];
}
if(k.preFilter[br]){bt=k.preFilter[br](bt,bi,bf,bn,bg,bj);

if(!bt){bs=bq=true;
}else if(bt===true){continue;
}}
if(bt){for(var i=0;(bm=bi[i])!=null;i++){if(bm){bq=bk(bm,bt,i,bi);
var bo=bg^!!bq;

if(bf&&bq!=null){if(bo){bs=true;
}else{bi[i]=false;
}}else if(bo){bn.push(bm);
bs=true;
}}}}
if(bq!==undefined){if(!bf){bi=bn;
}bd=bd.replace(k.match[br],"");

if(!bs){return [];
}break;
}}}if(bd===bh){if(bs==null){s.error(bd);
}else{break;
}}bh=bd;
}return bi;
};
s.error=function(bv){throw "Syntax error, unrecognized expression: "+bv;
};
var k=s.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(?:(['"])(.*?)\3|(#?(?:[\w\u00c0-\uFFFF\-]|\\.)*)|)|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\(\s*(even|odd|(?:[+\-]?\d+|(?:[+\-]?\d*)?n\s*(?:[+\-]\s*\d+)?))\s*\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(bw){return bw.getAttribute("href");
},type:function(bx){return bx.getAttribute("type");
}},relative:{"+":function(by,bz){var bA=typeof bz==="string",bC=bA&&!g.test(bz),bD=bA&&!bC;

if(bC){bz=bz.toLowerCase();
}
for(var i=0,l=by.length,bB;i<l;i++){if((bB=by[i])){while((bB=bB.previousSibling)&&bB.nodeType!==1){}by[i]=bD||bB&&bB.nodeName.toLowerCase()===bz?bB||false:bB===bz;
}}
if(bD){s.filter(bz,by,true);
}},">":function(bE,bF){var bH,bG=typeof bF==="string",i=0,l=bE.length;

if(bG&&!g.test(bF)){bF=bF.toLowerCase();

for(;i<l;i++){bH=bE[i];

if(bH){var parent=bH.parentNode;
bE[i]=parent.nodeName.toLowerCase()===bF?parent:false;
}}}else{for(;i<l;i++){bH=bE[i];

if(bH){bE[i]=bG?bH.parentNode:bH.parentNode===bF;
}}
if(bG){s.filter(bF,bE,true);
}}},"":function(bI,bJ,bK){var bN,bL=v++,bM=y;

if(typeof bJ==="string"&&!g.test(bJ)){bJ=bJ.toLowerCase();
bN=bJ;
bM=A;
}bM("parentNode",bJ,bL,bI,bN,bK);
},"~":function(bO,bP,bQ){var bT,bR=v++,bS=y;

if(typeof bP==="string"&&!g.test(bP)){bP=bP.toLowerCase();
bT=bP;
bS=A;
}bS("previousSibling",bP,bR,bO,bT,bQ);
}},find:{ID:function(bU,bV,bW){if(typeof bV.getElementById!=="undefined"&&!bW){var m=bV.getElementById(bU[1]);
return m&&m.parentNode?[m]:[];
}},NAME:function(bX,bY){if(typeof bY.getElementsByName!=="undefined"){var cb=[],ca=bY.getElementsByName(bX[1]);

for(var i=0,l=ca.length;i<l;i++){if(ca[i].getAttribute("name")===bX[1]){cb.push(ca[i]);
}}return cb.length===0?null:cb;
}},TAG:function(cc,cd){if(typeof cd.getElementsByTagName!=="undefined"){return cd.getElementsByTagName(cc[1]);
}}},preFilter:{CLASS:function(ce,cf,cg,ch,ci,cj){ce=" "+ce[1].replace(t,"")+" ";

if(cj){return ce;
}
for(var i=0,ck;(ck=cf[i])!=null;i++){if(ck){if(ci^(ck.className&&(" "+ck.className+" ").replace(/[\t\n\r]/g," ").indexOf(ce)>=0)){if(!cg){ch.push(ck);
}}else if(cg){cf[i]=false;
}}}return false;
},ID:function(cl){return cl[1].replace(t,"");
},TAG:function(cm,cn){return cm[1].replace(t,"").toLowerCase();
},CHILD:function(co){if(co[1]==="nth"){if(!co[2]){s.error(co[0]);
}co[2]=co[2].replace(/^\+|\s*/g,'');
var cp=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(co[2]==="even"&&"2n"||co[2]==="odd"&&"2n+1"||!/\D/.test(co[2])&&"0n+"+co[2]||co[2]);
co[2]=(cp[1]+(cp[2]||1))-0;
co[3]=cp[3]-0;
}else if(co[2]){s.error(co[0]);
}co[0]=v++;
return co;
},ATTR:function(cq,cr,cs,ct,cu,cv){var name=cq[1]=cq[1].replace(t,"");

if(!cv&&k.attrMap[name]){cq[1]=k.attrMap[name];
}cq[4]=(cq[4]||cq[5]||"").replace(t,"");

if(cq[2]==="~="){cq[4]=" "+cq[4]+" ";
}return cq;
},PSEUDO:function(cw,cx,cy,cz,cA){if(cw[1]==="not"){if((o.exec(cw[3])||"").length>1||/^\w/.test(cw[3])){cw[3]=s(cw[3],null,null,cx);
}else{var cB=s.filter(cw[3],cx,cy,true^cA);

if(!cy){cz.push.apply(cz,cB);
}return false;
}}else if(k.match.POS.test(cw[0])||k.match.CHILD.test(cw[0])){return true;
}return cw;
},POS:function(cC){cC.unshift(true);
return cC;
}},filters:{enabled:function(cD){return cD.disabled===false&&cD.type!=="hidden";
},disabled:function(cE){return cE.disabled===true;
},checked:function(cF){return cF.checked===true;
},selected:function(cG){if(cG.parentNode){cG.parentNode.selectedIndex;
}return cG.selected===true;
},parent:function(cH){return !!cH.firstChild;
},empty:function(cI){return !cI.firstChild;
},has:function(cJ,i,cK){return !!s(cK[3],cJ).length;
},header:function(cL){return (/h\d/i).test(cL.nodeName);
},text:function(cM){return "text"===cM.getAttribute('type');
},radio:function(cN){return "radio"===cN.type;
},checkbox:function(cO){return "checkbox"===cO.type;
},file:function(cP){return "file"===cP.type;
},password:function(cQ){return "password"===cQ.type;
},submit:function(cR){return "submit"===cR.type;
},image:function(cS){return "image"===cS.type;
},reset:function(cT){return "reset"===cT.type;
},button:function(cU){return "button"===cU.type||cU.nodeName.toLowerCase()==="button";
},input:function(cV){return (/input|select|textarea|button/i).test(cV.nodeName);
}},setFilters:{first:function(cW,i){return i===0;
},last:function(cX,i,cY,da){return i===da.length-1;
},even:function(db,i){return i%2===0;
},odd:function(dc,i){return i%2===1;
},lt:function(dd,i,de){return i<de[3]-0;
},gt:function(df,i,dg){return i>dg[3]-0;
},nth:function(dh,i,di){return di[3]-0===i;
},eq:function(dj,i,dk){return dk[3]-0===i;
}},filter:{PSEUDO:function(dl,dm,i,dn){var name=dm[1],dp=k.filters[name];

if(dp){return dp(dl,i,dm,dn);
}else if(name==="contains"){return (dl.textContent||dl.innerText||s.getText([dl])||"").indexOf(dm[3])>=0;
}else if(name==="not"){var dq=dm[3];

for(var j=0,l=dq.length;j<l;j++){if(dq[j]===dl){return false;
}}return true;
}else{s.error(name);
}},CHILD:function(dr,ds){var dy=ds[1],dt=dr;

switch(dy){case "only":case "first":while((dt=dt.previousSibling)){if(dt.nodeType===1){return false;
}}
if(dy==="first"){return true;
}dt=dr;
case "last":while((dt=dt.nextSibling)){if(dt.nodeType===1){return false;
}}return true;
case "nth":var dz=ds[2],dv=ds[3];

if(dz===1&&dv===0){return true;
}var dx=ds[0],parent=dr.parentNode;

if(parent&&(parent.sizcache!==dx||!dr.nodeIndex)){var du=0;

for(dt=parent.firstChild;dt;dt=dt.nextSibling){if(dt.nodeType===1){dt.nodeIndex=++du;
}}parent.sizcache=dx;
}var dw=dr.nodeIndex-dv;

if(dz===0){return dw===0;
}else{return (dw%dz===0&&dw/dz>=0);
}}},ID:function(dA,dB){return dA.nodeType===1&&dA.getAttribute("id")===dB;
},TAG:function(dC,dD){return (dD==="*"&&dC.nodeType===1)||dC.nodeName.toLowerCase()===dD;
},CLASS:function(dE,dF){return (" "+(dE.className||dE.getAttribute("class"))+" ").indexOf(dF)>-1;
},ATTR:function(dG,dH){var name=dH[1],dL=k.attrHandle[name]?k.attrHandle[name](dG):dG[name]!=null?dG[name]:dG.getAttribute(name),dK=dL+"",dJ=dH[2],dI=dH[4];
return dL==null?dJ==="!=":dJ==="="?dK===dI:dJ==="*="?dK.indexOf(dI)>=0:dJ==="~="?(" "+dK+" ").indexOf(dI)>=0:!dI?dK&&dL!==false:dJ==="!="?dK!==dI:dJ==="^="?dK.indexOf(dI)===0:dJ==="$="?dK.substr(dK.length-dI.length)===dI:dJ==="|="?dK===dI||dK.substr(0,dI.length+1)===dI+"-":false;
},POS:function(dM,dN,i,dO){var name=dN[2],dP=k.setFilters[name];

if(dP){return dP(dM,i,dN,dO);
}}}};
var q=k.match.POS,d=function(dQ,dR){return "\\"+(dR-0+1);
};

for(var w in k.match){k.match[w]=new RegExp(k.match[w].source+(/(?![^\[]*\])(?![^\(]*\))/.source));
k.leftMatch[w]=new RegExp(/(^(?:.|\r|\n)*?)/.source+k.match[w].source.replace(/\\(\d+)/g,d));
}var f=function(dS,dT){dS=Array.prototype.slice.call(dS,0);

if(dT){dT.push.apply(dT,dS);
return dT;
}return dS;
};
try{Array.prototype.slice.call(document.documentElement.childNodes,0)[0].nodeType;
}catch(e){f=function(dU,dV){var i=0,dW=dV||[];

if(x.call(dU)==="[object Array]"){Array.prototype.push.apply(dW,dU);
}else{if(typeof dU.length==="number"){for(var l=dU.length;i<l;i++){dW.push(dU[i]);
}}else{for(;dU[i];i++){dW.push(dU[i]);
}}}return dW;
};
}var u,n;

if(document.documentElement.compareDocumentPosition){u=function(a,b){if(a===b){p=true;
return 0;
}
if(!a.compareDocumentPosition||!b.compareDocumentPosition){return a.compareDocumentPosition?-1:1;
}return a.compareDocumentPosition(b)&4?-1:1;
};
}else{u=function(a,b){var ec,ea,ed=[],ee=[],dY=a.parentNode,eb=b.parentNode,dX=dY;
if(a===b){p=true;
return 0;
}else if(dY===eb){return n(a,b);
}else if(!dY){return -1;
}else if(!eb){return 1;
}while(dX){ed.unshift(dX);
dX=dX.parentNode;
}dX=eb;

while(dX){ee.unshift(dX);
dX=dX.parentNode;
}ec=ed.length;
ea=ee.length;
for(var i=0;i<ec&&i<ea;i++){if(ed[i]!==ee[i]){return n(ed[i],ee[i]);
}}return i===ec?n(a,ee[i],-1):n(ed[i],b,1);
};
n=function(a,b,ef){if(a===b){return ef;
}var eg=a.nextSibling;

while(eg){if(eg===b){return -1;
}eg=eg.nextSibling;
}return 1;
};
}s.getText=function(eh){var ej="",ei;

for(var i=0;eh[i];i++){ei=eh[i];
if(ei.nodeType===3||ei.nodeType===4){ej+=ei.nodeValue;
}else if(ei.nodeType!==8){ej+=s.getText(ei.childNodes);
}}return ej;
};
(function(){var em=document.createElement("div"),el="script"+(new Date()).getTime(),ek=document.documentElement;
em.innerHTML="<a name='"+el+"'/>";
ek.insertBefore(em,ek.firstChild);
if(document.getElementById(el)){k.find.ID=function(en,eo,ep){if(typeof eo.getElementById!=="undefined"&&!ep){var m=eo.getElementById(en[1]);
return m?m.id===en[1]||typeof m.getAttributeNode!=="undefined"&&m.getAttributeNode("id").nodeValue===en[1]?[m]:undefined:[];
}};
k.filter.ID=function(eq,er){var es=typeof eq.getAttributeNode!=="undefined"&&eq.getAttributeNode("id");
return eq.nodeType===1&&es&&es.nodeValue===er;
};
}ek.removeChild(em);
ek=em=null;
})();
(function(){var et=document.createElement("div");
et.appendChild(document.createComment(""));
if(et.getElementsByTagName("*").length>0){k.find.TAG=function(eu,ev){var ex=ev.getElementsByTagName(eu[1]);
if(eu[1]==="*"){var ew=[];

for(var i=0;ex[i];i++){if(ex[i].nodeType===1){ew.push(ex[i]);
}}ex=ew;
}return ex;
};
}et.innerHTML="<a href='#'></a>";

if(et.firstChild&&typeof et.firstChild.getAttribute!=="undefined"&&et.firstChild.getAttribute("href")!=="#"){k.attrHandle.href=function(ey){return ey.getAttribute("href",2);
};
}et=null;
})();

if(document.querySelectorAll){(function(){var eA=s,ez=document.createElement("div"),eB="__sizzle__";
ez.innerHTML="<p class='TEST'></p>";
if(ez.querySelectorAll&&ez.querySelectorAll(".TEST").length===0){return;
}s=function(eD,eE,eF,eG){eE=eE||document;
if(!eG&&!s.isXML(eE)){var eL=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(eD);

if(eL&&(eE.nodeType===1||eE.nodeType===9)){if(eL[1]){return f(eE.getElementsByTagName(eD),eF);
}else if(eL[2]&&k.find.CLASS&&eE.getElementsByClassName){return f(eE.getElementsByClassName(eL[2]),eF);
}}
if(eE.nodeType===9){if(eD==="body"&&eE.body){return f([eE.body],eF);
}else if(eL&&eL[3]){var eJ=eE.getElementById(eL[3]);
if(eJ&&eJ.parentNode){if(eJ.id===eL[3]){return f([eJ],eF);
}}else{return f([],eF);
}}
try{return f(eE.querySelectorAll(eD),eF);
}catch(eO){}}else if(eE.nodeType===1&&eE.nodeName.toLowerCase()!=="object"){var eN=eE,eI=eE.getAttribute("id"),eK=eI||eB,eH=eE.parentNode,eM=/^\s*[+~]/.test(eD);

if(!eI){eE.setAttribute("id",eK);
}else{eK=eK.replace(/'/g,"\\$&");
}
if(eM&&eH){eE=eE.parentNode;
}
try{if(!eM||eH){return f(eE.querySelectorAll("[id='"+eK+"'] "+eD),eF);
}}catch(eP){}finally{if(!eI){eN.removeAttribute("id");
}}}}return eA(eD,eE,eF,eG);
};

for(var eC in eA){s[eC]=eA[eC];
}ez=null;
})();
}(function(){var eS=document.documentElement,eQ=eS.matchesSelector||eS.mozMatchesSelector||eS.webkitMatchesSelector||eS.msMatchesSelector,eR=false;

try{eQ.call(document.documentElement,"[test!='']:sizzle");
}catch(eT){eR=true;
}
if(eQ){s.matchesSelector=function(eU,eV){eV=eV.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");

if(!s.isXML(eU)){try{if(eR||!k.match.PSEUDO.test(eV)&&!/!=/.test(eV)){return eQ.call(eU,eV);
}}catch(e){}}return s(eV,null,null,[eU]).length>0;
};
}})();
(function(){var eW=document.createElement("div");
eW.innerHTML="<div class='test e'></div><div class='test'></div>";
if(!eW.getElementsByClassName||eW.getElementsByClassName("e").length===0){return;
}eW.lastChild.className="e";

if(eW.getElementsByClassName("e").length===1){return;
}k.order.splice(1,0,"CLASS");
k.find.CLASS=function(eX,eY,fa){if(typeof eY.getElementsByClassName!=="undefined"&&!fa){return eY.getElementsByClassName(eX[1]);
}};
eW=null;
})();
function A(fb,fc,fd,fe,ff,fg){for(var i=0,l=fe.length;i<l;i++){var fi=fe[i];

if(fi){var fh=false;
fi=fi[fb];

while(fi){if(fi.sizcache===fd){fh=fe[fi.sizset];
break;
}
if(fi.nodeType===1&&!fg){fi.sizcache=fd;
fi.sizset=i;
}
if(fi.nodeName.toLowerCase()===fc){fh=fi;
break;
}fi=fi[fb];
}fe[i]=fh;
}}}function y(fj,fk,fl,fm,fn,fo){for(var i=0,l=fm.length;i<l;i++){var fq=fm[i];

if(fq){var fp=false;
fq=fq[fj];

while(fq){if(fq.sizcache===fl){fp=fm[fq.sizset];
break;
}
if(fq.nodeType===1){if(!fo){fq.sizcache=fl;
fq.sizset=i;
}
if(typeof fk!=="string"){if(fq===fk){fp=true;
break;
}}else if(s.filter(fk,[fq]).length>0){fp=fq;
break;
}}fq=fq[fj];
}fm[i]=fp;
}}}
if(document.documentElement.contains){s.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):true);
};
}else if(document.documentElement.compareDocumentPosition){s.contains=function(a,b){return !!(a.compareDocumentPosition(b)&16);
};
}else{s.contains=function(){return false;
};
}s.isXML=function(fr){var fs=(fr?fr.ownerDocument||fr:0).documentElement;
return fs?fs.nodeName!=="HTML":false;
};
var h=function(ft,fu){var fy,fw=[],fv="",fx=fu.nodeType?[fu]:fu;
while((fy=k.match.PSEUDO.exec(ft))){fv+=fy[0];
ft=ft.replace(k.match.PSEUDO,"");
}ft=k.relative[ft]?ft+"*":ft;

for(var i=0,l=fx.length;i<l;i++){s(ft,fx[i],fw);
}return s.filter(fv,fw);
};
var r=qx.bom.Selector;
r.query=function(fz,fA){return s(fz,fA);
};
r.matches=function(fB,fC){return s(fB,null,null,fC);
};
})();
})();
(function(){var r="engine.name",q="",p="MSXML2.DOMDocument.3.0",o="mshtml",n="SelectionLanguage",m="qx.xml.Document",k=" />",j="'",h="MSXML2.XMLHTTP.3.0",g="MSXML2.XMLHTTP.6.0",c=" xmlns='",f='<\?xml version="1.0" encoding="utf-8"?>\n<',e="text/xml",b="XPath",a="MSXML2.DOMDocument.6.0",d="HTML";
qx.Class.define(m,{statics:{DOMDOC:null,XMLHTTP:null,isXmlDocument:function(s){if(s.nodeType===9){return s.documentElement.nodeName!==d;
}else if(s.ownerDocument){return this.isXmlDocument(s.ownerDocument);
}else{return false;
}},create:qx.core.Environment.select(r,{"mshtml":function(t,u){var v=new ActiveXObject(this.DOMDOC);
if(this.DOMDOC==p){v.setProperty(n,b);
}
if(u){var w=f;
w+=u;

if(t){w+=c+t+j;
}w+=k;
v.loadXML(w);
}return v;
},"default":function(x,y){return document.implementation.createDocument(x||q,y||q,null);
}}),fromString:qx.core.Environment.select(r,{"mshtml":function(z){var A=qx.xml.Document.create();
A.loadXML(z);
return A;
},"default":function(B){var C=new DOMParser();
return C.parseFromString(B,e);
}})},defer:function(D){if((qx.core.Environment.get(r)==o)){var E=[a,p];
var F=[g,h];

for(var i=0,l=E.length;i<l;i++){try{new ActiveXObject(E[i]);
new ActiveXObject(F[i]);
}catch(G){continue;
}D.DOMDOC=E[i];
D.XMLHTTP=F[i];
break;
}}}});
})();
(function(){var a="qx.event.type.Focus";
qx.Class.define(a,{extend:qx.event.type.Event,members:{init:function(b,c,d){qx.event.type.Event.prototype.init.call(this,d,false);
this._target=b;
this._relatedTarget=c;
return this;
}}});
})();
(function(){var k="visible",j="scroll",i="borderBottomWidth",h="borderTopWidth",g="left",f="borderLeftWidth",e="bottom",d="top",c="right",b="qx.bom.element.Scroll",a="borderRightWidth";
qx.Class.define(b,{statics:{intoViewX:function(l,stop,m){var parent=l.parentNode;
var r=qx.dom.Node.getDocument(l);
var n=r.body;
var z,x,u;
var B,s,C;
var v,D,G;
var E,p,y,o;
var t,F,w;
var q=m===g;
var A=m===c;
stop=stop?stop.parentNode:r;
while(parent&&parent!=stop){if(parent.scrollWidth>parent.clientWidth&&(parent===n||qx.bom.element.Overflow.getY(parent)!=k)){if(parent===n){x=parent.scrollLeft;
u=x+qx.bom.Viewport.getWidth();
B=qx.bom.Viewport.getWidth();
s=parent.clientWidth;
C=parent.scrollWidth;
v=0;
D=0;
G=0;
}else{z=qx.bom.element.Location.get(parent);
x=z.left;
u=z.right;
B=parent.offsetWidth;
s=parent.clientWidth;
C=parent.scrollWidth;
v=parseInt(qx.bom.element.Style.get(parent,f),10)||0;
D=parseInt(qx.bom.element.Style.get(parent,a),10)||0;
G=B-s-v-D;
}E=qx.bom.element.Location.get(l);
p=E.left;
y=E.right;
o=l.offsetWidth;
t=p-x-v;
F=y-u+D;
w=0;
if(q){w=t;
}else if(A){w=F+G;
}else if(t<0||o>s){w=t;
}else if(F>0){w=F+G;
}parent.scrollLeft+=w;
qx.event.Registration.fireNonBubblingEvent(parent,j);
}
if(parent===n){break;
}parent=parent.parentNode;
}},intoViewY:function(H,stop,I){var parent=H.parentNode;
var O=qx.dom.Node.getDocument(H);
var J=O.body;
var W,K,S;
var Y,V,Q;
var M,N,L;
var bb,bc,X,R;
var U,P,bd;
var ba=I===d;
var T=I===e;
stop=stop?stop.parentNode:O;
while(parent&&parent!=stop){if(parent.scrollHeight>parent.clientHeight&&(parent===J||qx.bom.element.Overflow.getY(parent)!=k)){if(parent===J){K=parent.scrollTop;
S=K+qx.bom.Viewport.getHeight();
Y=qx.bom.Viewport.getHeight();
V=parent.clientHeight;
Q=parent.scrollHeight;
M=0;
N=0;
L=0;
}else{W=qx.bom.element.Location.get(parent);
K=W.top;
S=W.bottom;
Y=parent.offsetHeight;
V=parent.clientHeight;
Q=parent.scrollHeight;
M=parseInt(qx.bom.element.Style.get(parent,h),10)||0;
N=parseInt(qx.bom.element.Style.get(parent,i),10)||0;
L=Y-V-M-N;
}bb=qx.bom.element.Location.get(H);
bc=bb.top;
X=bb.bottom;
R=H.offsetHeight;
U=bc-K-M;
P=X-S+N;
bd=0;
if(ba){bd=U;
}else if(T){bd=P+L;
}else if(U<0||R>V){bd=U;
}else if(P>0){bd=P+L;
}parent.scrollTop+=bd;
qx.event.Registration.fireNonBubblingEvent(parent,j);
}
if(parent===J){break;
}parent=parent.parentNode;
}},intoView:function(be,stop,bf,bg){this.intoViewX(be,stop,bf);
this.intoViewY(be,stop,bg);
}}});
})();
(function(){var j="borderTopWidth",i="borderLeftWidth",h="marginTop",g="marginLeft",f="engine.name",e="scroll",d="engine.version",c="border-box",b="borderBottomWidth",a="borderRightWidth",C="auto",B="padding",A="browser.quirksmode",z="qx.bom.element.Location",y="paddingLeft",x="static",w="marginBottom",v="visible",u="BODY",t="opera",q="paddingBottom",r="paddingTop",o="marginRight",p="position",m="margin",n="overflow",k="paddingRight",l="browser.documentmode",s="border";
qx.Class.define(z,{statics:{__hs:function(D,E){return qx.bom.element.Style.get(D,E,qx.bom.element.Style.COMPUTED_MODE,false);
},__ht:function(F,G){return parseInt(qx.bom.element.Style.get(F,G,qx.bom.element.Style.COMPUTED_MODE,false),10)||0;
},__hu:function(H){var K=0,top=0;
if(H.getBoundingClientRect&&qx.core.Environment.get(f)!=t){var J=qx.dom.Node.getWindow(H);
K-=qx.bom.Viewport.getScrollLeft(J);
top-=qx.bom.Viewport.getScrollTop(J);
}else{var I=qx.dom.Node.getDocument(H).body;
H=H.parentNode;
while(H&&H!=I){K+=H.scrollLeft;
top+=H.scrollTop;
H=H.parentNode;
}}return {left:K,top:top};
},__hv:qx.core.Environment.select(f,{"mshtml":function(L){var N=qx.dom.Node.getDocument(L);
var M=N.body;
var O=0;
var top=0;
O-=M.clientLeft+N.documentElement.clientLeft;
top-=M.clientTop+N.documentElement.clientTop;

if(!qx.core.Environment.get(A)){O+=this.__ht(M,i);
top+=this.__ht(M,j);
}return {left:O,top:top};
},"webkit":function(P){var R=qx.dom.Node.getDocument(P);
var Q=R.body;
var S=Q.offsetLeft;
var top=Q.offsetTop;
if(parseFloat(qx.core.Environment.get(d))<530.17){S+=this.__ht(Q,i);
top+=this.__ht(Q,j);
}return {left:S,top:top};
},"gecko":function(T){var U=qx.dom.Node.getDocument(T).body;
var V=U.offsetLeft;
var top=U.offsetTop;
if(parseFloat(qx.core.Environment.get(d))<1.9){V+=this.__ht(U,g);
top+=this.__ht(U,h);
}if(qx.bom.element.BoxSizing.get(U)!==c){V+=this.__ht(U,i);
top+=this.__ht(U,j);
}return {left:V,top:top};
},"default":function(W){var X=qx.dom.Node.getDocument(W).body;
var Y=X.offsetLeft;
var top=X.offsetTop;
return {left:Y,top:top};
}}),__hw:qx.core.Environment.select(f,{"mshtml|webkit":function(ba){var bc=qx.dom.Node.getDocument(ba);
if(ba.getBoundingClientRect){var bd=ba.getBoundingClientRect();
var be=bd.left;
var top=bd.top;
}else{var be=ba.offsetLeft;
var top=ba.offsetTop;
ba=ba.offsetParent;
var bb=bc.body;
while(ba&&ba!=bb){be+=ba.offsetLeft;
top+=ba.offsetTop;
be+=this.__ht(ba,i);
top+=this.__ht(ba,j);
ba=ba.offsetParent;
}}return {left:be,top:top};
},"gecko":function(bf){if(bf.getBoundingClientRect){var bi=bf.getBoundingClientRect();
var bj=Math.round(bi.left);
var top=Math.round(bi.top);
}else{var bj=0;
var top=0;
var bg=qx.dom.Node.getDocument(bf).body;
var bh=qx.bom.element.BoxSizing;

if(bh.get(bf)!==c){bj-=this.__ht(bf,i);
top-=this.__ht(bf,j);
}
while(bf&&bf!==bg){bj+=bf.offsetLeft;
top+=bf.offsetTop;
if(bh.get(bf)!==c){bj+=this.__ht(bf,i);
top+=this.__ht(bf,j);
}if(bf.parentNode&&this.__hs(bf.parentNode,n)!=v){bj+=this.__ht(bf.parentNode,i);
top+=this.__ht(bf.parentNode,j);
}bf=bf.offsetParent;
}}return {left:bj,top:top};
},"default":function(bk){var bm=0;
var top=0;
var bl=qx.dom.Node.getDocument(bk).body;
while(bk&&bk!==bl){bm+=bk.offsetLeft;
top+=bk.offsetTop;
bk=bk.offsetParent;
}return {left:bm,top:top};
}}),get:function(bn,bo){if(bn.tagName==u){var location=this.__hx(bn);
var bv=location.left;
var top=location.top;
}else{var bp=this.__hv(bn);
var bu=this.__hw(bn);
var scroll=this.__hu(bn);
var bv=bu.left+bp.left-scroll.left;
var top=bu.top+bp.top-scroll.top;
}var bq=bv+bn.offsetWidth;
var br=top+bn.offsetHeight;

if(bo){if(bo==B||bo==e){var bs=qx.bom.element.Overflow.getX(bn);

if(bs==e||bs==C){bq+=bn.scrollWidth-bn.offsetWidth+this.__ht(bn,i)+this.__ht(bn,a);
}var bt=qx.bom.element.Overflow.getY(bn);

if(bt==e||bt==C){br+=bn.scrollHeight-bn.offsetHeight+this.__ht(bn,j)+this.__ht(bn,b);
}}
switch(bo){case B:bv+=this.__ht(bn,y);
top+=this.__ht(bn,r);
bq-=this.__ht(bn,k);
br-=this.__ht(bn,q);
case e:bv-=bn.scrollLeft;
top-=bn.scrollTop;
bq-=bn.scrollLeft;
br-=bn.scrollTop;
case s:bv+=this.__ht(bn,i);
top+=this.__ht(bn,j);
bq-=this.__ht(bn,a);
br-=this.__ht(bn,b);
break;
case m:bv-=this.__ht(bn,g);
top-=this.__ht(bn,h);
bq+=this.__ht(bn,o);
br+=this.__ht(bn,w);
break;
}}return {left:bv,top:top,right:bq,bottom:br};
},__hx:qx.core.Environment.select(f,{"default":function(bw){var top=bw.offsetTop+this.__ht(bw,h);
var bx=bw.offsetLeft+this.__ht(bw,g);
return {left:bx,top:top};
},"mshtml":function(by){var top=by.offsetTop;
var bz=by.offsetLeft;

if(!((parseFloat(qx.core.Environment.get(d))<8||qx.core.Environment.get(l)<8)&&!qx.core.Environment.get(A))){top+=this.__ht(by,h);
bz+=this.__ht(by,g);
}return {left:bz,top:top};
},"gecko":function(bA){var top=bA.offsetTop+this.__ht(bA,h)+this.__ht(bA,i);
var bB=bA.offsetLeft+this.__ht(bA,g)+this.__ht(bA,j);
return {left:bB,top:top};
}}),getLeft:function(bC,bD){return this.get(bC,bD).left;
},getTop:function(bE,bF){return this.get(bE,bF).top;
},getRight:function(bG,bH){return this.get(bG,bH).right;
},getBottom:function(bI,bJ){return this.get(bI,bJ).bottom;
},getRelative:function(bK,bL,bM,bN){var bP=this.get(bK,bM);
var bO=this.get(bL,bN);
return {left:bP.left-bO.left,top:bP.top-bO.top,right:bP.right-bO.right,bottom:bP.bottom-bO.bottom};
},getPosition:function(bQ){return this.getRelative(bQ,this.getOffsetParent(bQ));
},getOffsetParent:function(bR){var bT=bR.offsetParent||document.body;
var bS=qx.bom.element.Style;

while(bT&&(!/^body|html$/i.test(bT.tagName)&&bS.get(bT,p)===x)){bT=bT.offsetParent;
}return bT;
}}});
})();
(function(){var d="event.pointer",c="none",b="qx.html.Decorator",a="absolute";
qx.Class.define(b,{extend:qx.html.Element,construct:function(e,f){var g={position:a,top:0,left:0};

if(qx.core.Environment.get(d)){g.pointerEvents=c;
}qx.html.Element.call(this,null,g);
this.__hy=e;
this.__cn=f||e.toHashCode();
this.useMarkup(e.getMarkup());
},members:{__cn:null,__hy:null,getId:function(){return this.__cn;
},getDecorator:function(){return this.__hy;
},resize:function(h,i){this.__hy.resize(this.getDomElement(),h,i);
},tint:function(j){this.__hy.tint(this.getDomElement(),j);
},getInsets:function(){return this.__hy.getInsets();
}},destruct:function(){this.__hy=null;
}});
})();
(function(){var j="Integer",i="_applyDimension",h="Boolean",g="_applyStretching",f="_applyMargin",e="shorthand",d="_applyAlign",c="allowShrinkY",b="bottom",a="baseline",x="marginBottom",w="qx.ui.core.LayoutItem",v="center",u="marginTop",t="allowGrowX",s="middle",r="marginLeft",q="allowShrinkX",p="top",o="right",m="marginRight",n="abstract",k="allowGrowY",l="left";
qx.Class.define(w,{type:n,extend:qx.core.Object,properties:{minWidth:{check:j,nullable:true,apply:i,init:null,themeable:true},width:{check:j,nullable:true,apply:i,init:null,themeable:true},maxWidth:{check:j,nullable:true,apply:i,init:null,themeable:true},minHeight:{check:j,nullable:true,apply:i,init:null,themeable:true},height:{check:j,nullable:true,apply:i,init:null,themeable:true},maxHeight:{check:j,nullable:true,apply:i,init:null,themeable:true},allowGrowX:{check:h,apply:g,init:true,themeable:true},allowShrinkX:{check:h,apply:g,init:true,themeable:true},allowGrowY:{check:h,apply:g,init:true,themeable:true},allowShrinkY:{check:h,apply:g,init:true,themeable:true},allowStretchX:{group:[t,q],mode:e,themeable:true},allowStretchY:{group:[k,c],mode:e,themeable:true},marginTop:{check:j,init:0,apply:f,themeable:true},marginRight:{check:j,init:0,apply:f,themeable:true},marginBottom:{check:j,init:0,apply:f,themeable:true},marginLeft:{check:j,init:0,apply:f,themeable:true},margin:{group:[u,m,x,r],mode:e,themeable:true},alignX:{check:[l,v,o],nullable:true,apply:d,themeable:true},alignY:{check:[p,s,b,a],nullable:true,apply:d,themeable:true}},members:{__hz:null,__hA:null,__hB:null,__hC:null,__hD:null,__hE:null,__hF:null,getBounds:function(){return this.__hE||this.__hA||null;
},clearSeparators:function(){},renderSeparator:function(y,z){},renderLayout:function(A,top,B,C){var D;
var E=null;

if(this.getHeight()==null&&this._hasHeightForWidth()){var E=this._getHeightForWidth(B);
}
if(E!=null&&E!==this.__hz){this.__hz=E;
qx.ui.core.queue.Layout.add(this);
return null;
}var G=this.__hA;

if(!G){G=this.__hA={};
}var F={};

if(A!==G.left||top!==G.top){F.position=true;
G.left=A;
G.top=top;
}
if(B!==G.width||C!==G.height){F.size=true;
G.width=B;
G.height=C;
}if(this.__hB){F.local=true;
delete this.__hB;
}
if(this.__hD){F.margin=true;
delete this.__hD;
}return F;
},isExcluded:function(){return false;
},hasValidLayout:function(){return !this.__hB;
},scheduleLayoutUpdate:function(){qx.ui.core.queue.Layout.add(this);
},invalidateLayoutCache:function(){this.__hB=true;
this.__hC=null;
},getSizeHint:function(H){var I=this.__hC;

if(I){return I;
}
if(H===false){return null;
}I=this.__hC=this._computeSizeHint();
if(this._hasHeightForWidth()&&this.__hz&&this.getHeight()==null){I.height=this.__hz;
}if(I.minWidth>I.width){I.width=I.minWidth;
}
if(I.maxWidth<I.width){I.width=I.maxWidth;
}
if(!this.getAllowGrowX()){I.maxWidth=I.width;
}
if(!this.getAllowShrinkX()){I.minWidth=I.width;
}if(I.minHeight>I.height){I.height=I.minHeight;
}
if(I.maxHeight<I.height){I.height=I.maxHeight;
}
if(!this.getAllowGrowY()){I.maxHeight=I.height;
}
if(!this.getAllowShrinkY()){I.minHeight=I.height;
}return I;
},_computeSizeHint:function(){var N=this.getMinWidth()||0;
var K=this.getMinHeight()||0;
var O=this.getWidth()||N;
var M=this.getHeight()||K;
var J=this.getMaxWidth()||Infinity;
var L=this.getMaxHeight()||Infinity;
return {minWidth:N,width:O,maxWidth:J,minHeight:K,height:M,maxHeight:L};
},_hasHeightForWidth:function(){var P=this._getLayout();

if(P){return P.hasHeightForWidth();
}return false;
},_getHeightForWidth:function(Q){var R=this._getLayout();

if(R&&R.hasHeightForWidth()){return R.getHeightForWidth(Q);
}return null;
},_getLayout:function(){return null;
},_applyMargin:function(){this.__hD=true;
var parent=this.$$parent;

if(parent){parent.updateLayoutProperties();
}},_applyAlign:function(){var parent=this.$$parent;

if(parent){parent.updateLayoutProperties();
}},_applyDimension:function(){qx.ui.core.queue.Layout.add(this);
},_applyStretching:function(){qx.ui.core.queue.Layout.add(this);
},hasUserBounds:function(){return !!this.__hE;
},setUserBounds:function(S,top,T,U){this.__hE={left:S,top:top,width:T,height:U};
qx.ui.core.queue.Layout.add(this);
},resetUserBounds:function(){delete this.__hE;
qx.ui.core.queue.Layout.add(this);
},__hG:{},setLayoutProperties:function(V){if(V==null){return;
}var W=this.__hF;

if(!W){W=this.__hF={};
}var parent=this.getLayoutParent();

if(parent){parent.updateLayoutProperties(V);
}for(var X in V){if(V[X]==null){delete W[X];
}else{W[X]=V[X];
}}},getLayoutProperties:function(){return this.__hF||this.__hG;
},clearLayoutProperties:function(){delete this.__hF;
},updateLayoutProperties:function(Y){var ba=this._getLayout();

if(ba){var bb;
ba.invalidateChildrenCache();
}qx.ui.core.queue.Layout.add(this);
},getApplicationRoot:function(){return qx.core.Init.getApplication().getRoot();
},getLayoutParent:function(){return this.$$parent||null;
},setLayoutParent:function(parent){if(this.$$parent===parent){return;
}this.$$parent=parent||null;
qx.ui.core.queue.Visibility.add(this);
},isRootWidget:function(){return false;
},_getRoot:function(){var parent=this;

while(parent){if(parent.isRootWidget()){return parent;
}parent=parent.$$parent;
}return null;
},clone:function(){var bc=qx.core.Object.prototype.clone.call(this);
var bd=this.__hF;

if(bd){bc.__hF=qx.lang.Object.clone(bd);
}return bc;
}},destruct:function(){this.$$parent=this.$$subparent=this.__hF=this.__hA=this.__hE=this.__hC=null;
}});
})();
(function(){var b="qx.ui.core.queue.Layout",a="layout";
qx.Class.define(b,{statics:{__dF:{},remove:function(c){delete this.__dF[c.$$hash];
},add:function(d){this.__dF[d.$$hash]=d;
qx.ui.core.queue.Manager.scheduleFlush(a);
},isScheduled:function(e){return !!this.__dF[e.$$hash];
},flush:function(){var f=this.__hJ();
for(var i=f.length-1;i>=0;i--){var g=f[i];
if(g.hasValidLayout()){continue;
}if(g.isRootWidget()&&!g.hasUserBounds()){var j=g.getSizeHint();
g.renderLayout(0,0,j.width,j.height);
}else{var h=g.getBounds();
g.renderLayout(h.left,h.top,h.width,h.height);
}}},getNestingLevel:function(k){var l=this.__hI;
var n=0;
var parent=k;
while(true){if(l[parent.$$hash]!=null){n+=l[parent.$$hash];
break;
}
if(!parent.$$parent){break;
}parent=parent.$$parent;
n+=1;
}var m=n;

while(k&&k!==parent){l[k.$$hash]=m--;
k=k.$$parent;
}return n;
},__hH:function(){var t=qx.ui.core.queue.Visibility;
this.__hI={};
var s=[];
var r=this.__dF;
var o,q;

for(var p in r){o=r[p];

if(t.isVisible(o)){q=this.getNestingLevel(o);
if(!s[q]){s[q]={};
}s[q][p]=o;
delete r[p];
}}return s;
},__hJ:function(){var x=[];
var z=this.__hH();

for(var w=z.length-1;w>=0;w--){if(!z[w]){continue;
}
for(var v in z[w]){var u=z[w][v];
if(w==0||u.isRootWidget()||u.hasUserBounds()){x.push(u);
u.invalidateLayoutCache();
continue;
}var B=u.getSizeHint(false);

if(B){u.invalidateLayoutCache();
var y=u.getSizeHint();
var A=(!u.getBounds()||B.minWidth!==y.minWidth||B.width!==y.width||B.maxWidth!==y.maxWidth||B.minHeight!==y.minHeight||B.height!==y.height||B.maxHeight!==y.maxHeight);
}else{A=true;
}
if(A){var parent=u.getLayoutParent();

if(!z[w-1]){z[w-1]={};
}z[w-1][parent.$$hash]=parent;
}else{x.push(u);
}}}return x;
}}});
})();
(function(){var h="useraction",g="touchend",f='ie',d="browser.version",c="event.touch",b="qx.ui.core.queue.Manager",a="browser.name";
qx.Class.define(b,{statics:{__hK:false,__hL:{},__hM:0,MAX_RETRIES:10,scheduleFlush:function(i){var self=qx.ui.core.queue.Manager;
self.__hL[i]=true;

if(!self.__hK){self.__fr.schedule();
self.__hK=true;
}},flush:function(){if(qx.ui.core.queue.Manager.PAUSE){return;
}var self=qx.ui.core.queue.Manager;
if(self.__hN){return;
}self.__hN=true;
self.__fr.cancel();
var j=self.__hL;
self.__hO(function(){while(j.visibility||j.widget||j.appearance||j.layout||j.element){if(j.widget){delete j.widget;
qx.ui.core.queue.Widget.flush();
}
if(j.visibility){delete j.visibility;
qx.ui.core.queue.Visibility.flush();
}
if(j.appearance){delete j.appearance;
qx.ui.core.queue.Appearance.flush();
}if(j.widget||j.visibility||j.appearance){continue;
}
if(j.layout){delete j.layout;
qx.ui.core.queue.Layout.flush();
}if(j.widget||j.visibility||j.appearance||j.layout){continue;
}
if(j.element){delete j.element;
qx.html.Element.flush();
}}},function(){self.__hK=false;
});
self.__hO(function(){if(j.dispose){delete j.dispose;
qx.ui.core.queue.Dispose.flush();
}},function(){self.__hN=false;
});
self.__hM=0;
},__hO:function(k,l){var self=qx.ui.core.queue.Manager;

try{k();
}catch(e){self.__hK=false;
self.__hN=false;
self.__hM+=1;
if(qx.core.Environment.get(a)==f&&qx.core.Environment.get(d)<=7){l();
}
if(self.__hM<=self.MAX_RETRIES){self.scheduleFlush();
}else{throw new Error("Fatal Error: Flush terminated "+(self.__hM-1)+" times in a row"+" due to exceptions in user code. The application has to be reloaded!");
}throw e;
}finally{l();
}},__hP:function(e){var m=qx.ui.core.queue.Manager;
if(e.getData()==g){m.PAUSE=true;

if(m.__hQ){window.clearTimeout(m.__hQ);
}m.__hQ=window.setTimeout(function(){m.PAUSE=false;
m.__hQ=null;
m.flush();
},500);
}else{m.flush();
}}},defer:function(n){n.__fr=new qx.util.DeferredCall(n.flush);
qx.html.Element._scheduleFlush=n.scheduleFlush;
qx.event.Registration.addListener(window,h,qx.core.Environment.get(c)?n.__hP:n.flush);
}});
})();
(function(){var b="qx.ui.core.queue.Widget",a="widget";
qx.Class.define(b,{statics:{__dF:[],remove:function(c){qx.lang.Array.remove(this.__dF,c);
},add:function(d){var e=this.__dF;

if(qx.lang.Array.contains(e,d)){return;
}e.unshift(d);
qx.ui.core.queue.Manager.scheduleFlush(a);
},flush:function(){var f=this.__dF;
var g;

for(var i=f.length-1;i>=0;i--){g=f[i];
f.splice(i,1);
g.syncWidget();
}if(f.length!=0){return;
}this.__dF=[];
}}});
})();
(function(){var b="qx.ui.core.queue.Visibility",a="visibility";
qx.Class.define(b,{statics:{__dF:[],__cM:{},remove:function(c){delete this.__cM[c.$$hash];
qx.lang.Array.remove(this.__dF,c);
},isVisible:function(d){return this.__cM[d.$$hash]||false;
},__hR:function(e){var g=this.__cM;
var f=e.$$hash;
var h;
if(e.isExcluded()){h=false;
}else{var parent=e.$$parent;

if(parent){h=this.__hR(parent);
}else{h=e.isRootWidget();
}}return g[f]=h;
},add:function(j){var k=this.__dF;

if(qx.lang.Array.contains(k,j)){return;
}k.unshift(j);
qx.ui.core.queue.Manager.scheduleFlush(a);
},flush:function(){var o=this.__dF;
var p=this.__cM;
for(var i=o.length-1;i>=0;i--){var n=o[i].$$hash;

if(p[n]!=null){o[i].addChildrenToQueue(o);
}}var l={};

for(var i=o.length-1;i>=0;i--){var n=o[i].$$hash;
l[n]=p[n];
p[n]=null;
}for(var i=o.length-1;i>=0;i--){var m=o[i];
var n=m.$$hash;
o.splice(i,1);
if(p[n]==null){this.__hR(m);
}if(p[n]&&p[n]!=l[n]){m.checkAppearanceNeeds();
}}this.__dF=[];
}}});
})();
(function(){var b="appearance",a="qx.ui.core.queue.Appearance";
qx.Class.define(a,{statics:{__dF:[],remove:function(c){qx.lang.Array.remove(this.__dF,c);
},add:function(d){var e=this.__dF;

if(qx.lang.Array.contains(e,d)){return;
}e.unshift(d);
qx.ui.core.queue.Manager.scheduleFlush(b);
},has:function(f){return qx.lang.Array.contains(this.__dF,f);
},flush:function(){var j=qx.ui.core.queue.Visibility;
var g=this.__dF;
var h;

for(var i=g.length-1;i>=0;i--){h=g[i];
g.splice(i,1);
if(j.isVisible(h)){h.syncAppearance();
}else{h.$$stateChanges=true;
}}}}});
})();
(function(){var b="dispose",a="qx.ui.core.queue.Dispose";
qx.Class.define(a,{statics:{__dF:[],add:function(c){var d=this.__dF;

if(qx.lang.Array.contains(d,c)){return;
}d.unshift(c);
qx.ui.core.queue.Manager.scheduleFlush(b);
},isEmpty:function(){return this.__dF.length==0;
},flush:function(){var e=this.__dF;

for(var i=e.length-1;i>=0;i--){var f=e[i];
e.splice(i,1);
f.dispose();
}if(e.length!=0){return;
}this.__dF=[];
}}});
})();
(function(){var bY="px",bX="Boolean",bW="qx.event.type.Drag",bV="qx.event.type.Mouse",bU="visible",bT="qx.event.type.Focus",bS="Integer",bR="qx.event.type.Touch",bQ="qx.event.type.Data",bP="excluded",bx="_applyPadding",bw="qx.event.type.Event",bv="on",bu="hidden",bt="engine.name",bs="contextmenu",br="String",bq="tabIndex",bp="focused",bo="changeVisibility",cg="mshtml",ch="hovered",ce="qx.event.type.KeySequence",cf="absolute",cc="backgroundColor",cd="drag",ca="div",cb="disabled",ci="move",cj="dragstart",bI="qx.dynlocale",bH="dragchange",bK="dragend",bJ="resize",bM="Decorator",bL="zIndex",bO="opacity",bN="default",bG="Color",bF="changeToolTipText",c="beforeContextmenuOpen",d="_applyNativeContextMenu",f="_applyBackgroundColor",g="event.pointer",h="_applyFocusable",j="changeShadow",k="qx.event.type.KeyInput",m="createChildControl",n="__hS",o="__ic",cn="Font",cm="_applyShadow",cl="_applyEnabled",ck="_applySelectable",cr="Number",cq="_applyKeepActive",cp="_applyVisibility",co="repeat",ct="qxDraggable",cs="syncAppearance",N="paddingLeft",O="_applyDroppable",L="#",M="qx.event.type.MouseWheel",R="_applyCursor",S="__hT",P="_applyDraggable",Q="changeTextColor",J="$$widget",K="changeContextMenu",w="paddingTop",v="changeSelectable",y="hideFocus",x="none",s="outline",r="_applyAppearance",u="_applyOpacity",t="url(",q=")",p="qx.ui.core.Widget",X="_applyFont",Y="cursor",ba="qxDroppable",bb="changeZIndex",T="changeEnabled",U="__hW",V="__ig",W="changeFont",bc="_applyDecorator",bd="_applyZIndex",G="_applyTextColor",F="qx.ui.menu.Menu",E="_applyToolTipText",D="__ie",C="__hY",B="true",A="widget",z="changeDecorator",I="_applyTabIndex",H="changeAppearance",be="shorthand",bf="/",bg="",bh="_applyContextMenu",bi="paddingBottom",bj="changeNativeContextMenu",bk="undefined",bl="qx.ui.tooltip.ToolTip",bm="qxKeepActive",bn="_applyKeepFocus",bB="paddingRight",bA="changeBackgroundColor",bz="changeLocale",by="__hX",bE="qxKeepFocus",bD="opera",bC="qx/static/blank.gif";
qx.Class.define(p,{extend:qx.ui.core.LayoutItem,include:[qx.locale.MTranslation],construct:function(){qx.ui.core.LayoutItem.call(this);
this.__hS=this._createContainerElement();
this.__hT=this.__if();
this.__hS.add(this.__hT);
this.initFocusable();
this.initSelectable();
this.initNativeContextMenu();
},events:{appear:bw,disappear:bw,createChildControl:bQ,resize:bQ,move:bQ,syncAppearance:bQ,mousemove:bV,mouseover:bV,mouseout:bV,mousedown:bV,mouseup:bV,click:bV,dblclick:bV,contextmenu:bV,beforeContextmenuOpen:bQ,mousewheel:M,touchstart:bR,touchend:bR,touchmove:bR,touchcancel:bR,tap:bR,swipe:bR,keyup:ce,keydown:ce,keypress:ce,keyinput:k,focus:bT,blur:bT,focusin:bT,focusout:bT,activate:bT,deactivate:bT,capture:bw,losecapture:bw,drop:bW,dragleave:bW,dragover:bW,drag:bW,dragstart:bW,dragend:bW,dragchange:bW,droprequest:bW},properties:{paddingTop:{check:bS,init:0,apply:bx,themeable:true},paddingRight:{check:bS,init:0,apply:bx,themeable:true},paddingBottom:{check:bS,init:0,apply:bx,themeable:true},paddingLeft:{check:bS,init:0,apply:bx,themeable:true},padding:{group:[w,bB,bi,N],mode:be,themeable:true},zIndex:{nullable:true,init:null,apply:bd,event:bb,check:bS,themeable:true},decorator:{nullable:true,init:null,apply:bc,event:z,check:bM,themeable:true},shadow:{nullable:true,init:null,apply:cm,event:j,check:bM,themeable:true},backgroundColor:{nullable:true,check:bG,apply:f,event:bA,themeable:true},textColor:{nullable:true,check:bG,apply:G,event:Q,themeable:true,inheritable:true},font:{nullable:true,apply:X,check:cn,event:W,themeable:true,inheritable:true,dereference:true},opacity:{check:cr,apply:u,themeable:true,nullable:true,init:null},cursor:{check:br,apply:R,themeable:true,inheritable:true,nullable:true,init:null},toolTip:{check:bl,nullable:true},toolTipText:{check:br,nullable:true,event:bF,apply:E},toolTipIcon:{check:br,nullable:true,event:bF},blockToolTip:{check:bX,init:false},visibility:{check:[bU,bu,bP],init:bU,apply:cp,event:bo},enabled:{init:true,check:bX,inheritable:true,apply:cl,event:T},anonymous:{init:false,check:bX},tabIndex:{check:bS,nullable:true,apply:I},focusable:{check:bX,init:false,apply:h},keepFocus:{check:bX,init:false,apply:bn},keepActive:{check:bX,init:false,apply:cq},draggable:{check:bX,init:false,apply:P},droppable:{check:bX,init:false,apply:O},selectable:{check:bX,init:false,event:v,apply:ck},contextMenu:{check:F,apply:bh,nullable:true,event:K},nativeContextMenu:{check:bX,init:false,themeable:true,event:bj,apply:d},appearance:{check:br,init:A,apply:r,event:H}},statics:{DEBUG:false,getWidgetByElement:function(cu,cv){while(cu){var cw=cu.$$widget;
if(cw!=null){var cx=qx.core.ObjectRegistry.fromHashCode(cw);
if(!cv||!cx.getAnonymous()){return cx;
}}try{cu=cu.parentNode;
}catch(e){return null;
}}return null;
},contains:function(parent,cy){while(cy){if(parent==cy){return true;
}cy=cy.getLayoutParent();
}return false;
},__hU:new qx.ui.core.DecoratorFactory(),__hV:new qx.ui.core.DecoratorFactory()},members:{__hS:null,__hT:null,__hW:null,__hX:null,__hY:null,__ia:null,__ib:null,__ic:null,_getLayout:function(){return this.__ic;
},_setLayout:function(cz){if(this.__ic){this.__ic.connectToWidget(null);
}
if(cz){cz.connectToWidget(this);
}this.__ic=cz;
qx.ui.core.queue.Layout.add(this);
},setLayoutParent:function(parent){if(this.$$parent===parent){return;
}var cA=this.getContainerElement();

if(this.$$parent&&!this.$$parent.$$disposed){this.$$parent.getContentElement().remove(cA);
}this.$$parent=parent||null;

if(parent&&!parent.$$disposed){this.$$parent.getContentElement().add(cA);
}this.$$refreshInheritables();
qx.ui.core.queue.Visibility.add(this);
},_updateInsets:null,__id:function(a,b){if(a==b){return false;
}
if(a==null||b==null){return true;
}var cB=qx.theme.manager.Decoration.getInstance();
var cD=cB.resolve(a).getInsets();
var cC=cB.resolve(b).getInsets();

if(cD.top!=cC.top||cD.right!=cC.right||cD.bottom!=cC.bottom||cD.left!=cC.left){return true;
}return false;
},renderLayout:function(cE,top,cF,cG){var cP=qx.ui.core.LayoutItem.prototype.renderLayout.call(this,cE,top,cF,cG);
if(!cP){return null;
}var cI=this.getContainerElement();
var content=this.getContentElement();
var cM=cP.size||this._updateInsets;
var cQ=bY;
var cN={};
if(cP.position){cN.left=cE+cQ;
cN.top=top+cQ;
}if(cP.size){cN.width=cF+cQ;
cN.height=cG+cQ;
}
if(cP.position||cP.size){cI.setStyles(cN);
}
if(cM||cP.local||cP.margin){var cH=this.getInsets();
var innerWidth=cF-cH.left-cH.right;
var innerHeight=cG-cH.top-cH.bottom;
innerWidth=innerWidth<0?0:innerWidth;
innerHeight=innerHeight<0?0:innerHeight;
}var cK={};

if(this._updateInsets){cK.left=cH.left+cQ;
cK.top=cH.top+cQ;
}
if(cM){cK.width=innerWidth+cQ;
cK.height=innerHeight+cQ;
}
if(cM||this._updateInsets){content.setStyles(cK);
}
if(cP.size){var cO=this.__hY;

if(cO){cO.setStyles({width:cF+bY,height:cG+bY});
}}
if(cP.size||this._updateInsets){if(this.__hW){this.__hW.resize(cF,cG);
}}
if(cP.size){if(this.__hX){var cH=this.__hX.getInsets();
var cL=cF+cH.left+cH.right;
var cJ=cG+cH.top+cH.bottom;
this.__hX.resize(cL,cJ);
}}
if(cM||cP.local||cP.margin){if(this.__ic&&this.hasLayoutChildren()){this.__ic.renderLayout(innerWidth,innerHeight);
}else if(this.hasLayoutChildren()){throw new Error("At least one child in control "+this._findTopControl()+" requires a layout, but no one was defined!");
}}if(cP.position&&this.hasListener(ci)){this.fireDataEvent(ci,this.getBounds());
}
if(cP.size&&this.hasListener(bJ)){this.fireDataEvent(bJ,this.getBounds());
}delete this._updateInsets;
return cP;
},__ie:null,clearSeparators:function(){var cS=this.__ie;

if(!cS){return;
}var cT=qx.ui.core.Widget.__hU;
var content=this.getContentElement();
var cR;

for(var i=0,l=cS.length;i<l;i++){cR=cS[i];
cT.poolDecorator(cR);
content.remove(cR);
}cS.length=0;
},renderSeparator:function(cU,cV){var cW=qx.ui.core.Widget.__hU.getDecoratorElement(cU);
this.getContentElement().add(cW);
cW.resize(cV.width,cV.height);
cW.setStyles({left:cV.left+bY,top:cV.top+bY});
if(!this.__ie){this.__ie=[cW];
}else{this.__ie.push(cW);
}},_computeSizeHint:function(){var de=this.getWidth();
var dd=this.getMinWidth();
var cY=this.getMaxWidth();
var dc=this.getHeight();
var da=this.getMinHeight();
var db=this.getMaxHeight();
var df=this._getContentHint();
var cX=this.getInsets();
var dh=cX.left+cX.right;
var dg=cX.top+cX.bottom;

if(de==null){de=df.width+dh;
}
if(dc==null){dc=df.height+dg;
}
if(dd==null){dd=dh;

if(df.minWidth!=null){dd+=df.minWidth;
if(dd>cY&&cY!=null){dd=cY;
}}}
if(da==null){da=dg;

if(df.minHeight!=null){da+=df.minHeight;
if(da>db&&db!=null){da=db;
}}}
if(cY==null){if(df.maxWidth==null){cY=Infinity;
}else{cY=df.maxWidth+dh;
if(cY<dd&&dd!=null){cY=dd;
}}}
if(db==null){if(df.maxHeight==null){db=Infinity;
}else{db=df.maxHeight+dg;
if(db<da&&da!=null){db=da;
}}}return {width:de,minWidth:dd,maxWidth:cY,height:dc,minHeight:da,maxHeight:db};
},invalidateLayoutCache:function(){qx.ui.core.LayoutItem.prototype.invalidateLayoutCache.call(this);

if(this.__ic){this.__ic.invalidateLayoutCache();
}},_getContentHint:function(){var dj=this.__ic;

if(dj){if(this.hasLayoutChildren()){var di;
var dk=dj.getSizeHint();
return dk;
}else{return {width:0,height:0};
}}else{return {width:100,height:50};
}},_getHeightForWidth:function(dl){var dq=this.getInsets();
var dt=dq.left+dq.right;
var ds=dq.top+dq.bottom;
var dr=dl-dt;
var dn=this._getLayout();

if(dn&&dn.hasHeightForWidth()){var dm=dn.getHeightForWidth(dl);
}else{dm=this._getContentHeightForWidth(dr);
}var dp=dm+ds;
return dp;
},_getContentHeightForWidth:function(du){throw new Error("Abstract method call: _getContentHeightForWidth()!");
},getInsets:function(){var top=this.getPaddingTop();
var dw=this.getPaddingRight();
var dy=this.getPaddingBottom();
var dx=this.getPaddingLeft();

if(this.__hW){var dv=this.__hW.getInsets();
top+=dv.top;
dw+=dv.right;
dy+=dv.bottom;
dx+=dv.left;
}return {"top":top,"right":dw,"bottom":dy,"left":dx};
},getInnerSize:function(){var dA=this.getBounds();

if(!dA){return null;
}var dz=this.getInsets();
return {width:dA.width-dz.left-dz.right,height:dA.height-dz.top-dz.bottom};
},show:function(){this.setVisibility(bU);
},hide:function(){this.setVisibility(bu);
},exclude:function(){this.setVisibility(bP);
},isVisible:function(){return this.getVisibility()===bU;
},isHidden:function(){return this.getVisibility()!==bU;
},isExcluded:function(){return this.getVisibility()===bP;
},isSeeable:function(){var dC=this.getContainerElement().getDomElement();

if(dC){return dC.offsetWidth>0;
}var dB=this;

do{if(!dB.isVisible()){return false;
}
if(dB.isRootWidget()){return true;
}dB=dB.getLayoutParent();
}while(dB);
return false;
},_createContainerElement:function(){var dE={"$$widget":this.toHashCode()};
var dD={zIndex:0,position:cf};
return new qx.html.Element(ca,dD,dE);
},__if:function(){var dF=this._createContentElement();
dF.setStyles({"position":cf,"zIndex":10});
return dF;
},_createContentElement:function(){return new qx.html.Element(ca,{overflowX:bu,overflowY:bu});
},getContainerElement:function(){return this.__hS;
},getContentElement:function(){return this.__hT;
},getDecoratorElement:function(){return this.__hW||null;
},getShadowElement:function(){return this.__hX||null;
},__ig:null,getLayoutChildren:function(){var dH=this.__ig;

if(!dH){return this.__ih;
}var dI;

for(var i=0,l=dH.length;i<l;i++){var dG=dH[i];

if(dG.hasUserBounds()||dG.isExcluded()){if(dI==null){dI=dH.concat();
}qx.lang.Array.remove(dI,dG);
}}return dI||dH;
},scheduleLayoutUpdate:function(){qx.ui.core.queue.Layout.add(this);
},invalidateLayoutChildren:function(){var dJ=this.__ic;

if(dJ){dJ.invalidateChildrenCache();
}qx.ui.core.queue.Layout.add(this);
},hasLayoutChildren:function(){var dK=this.__ig;

if(!dK){return false;
}var dL;

for(var i=0,l=dK.length;i<l;i++){dL=dK[i];

if(!dL.hasUserBounds()&&!dL.isExcluded()){return true;
}}return false;
},getChildrenContainer:function(){return this;
},__ih:[],_getChildren:function(){return this.__ig||this.__ih;
},_indexOf:function(dM){var dN=this.__ig;

if(!dN){return -1;
}return dN.indexOf(dM);
},_hasChildren:function(){var dO=this.__ig;
return dO!=null&&(!!dO[0]);
},addChildrenToQueue:function(dP){var dQ=this.__ig;

if(!dQ){return;
}var dR;

for(var i=0,l=dQ.length;i<l;i++){dR=dQ[i];
dP.push(dR);
dR.addChildrenToQueue(dP);
}},_add:function(dS,dT){if(dS.getLayoutParent()==this){qx.lang.Array.remove(this.__ig,dS);
}
if(this.__ig){this.__ig.push(dS);
}else{this.__ig=[dS];
}this.__ii(dS,dT);
},_addAt:function(dU,dV,dW){if(!this.__ig){this.__ig=[];
}if(dU.getLayoutParent()==this){qx.lang.Array.remove(this.__ig,dU);
}var dX=this.__ig[dV];

if(dX===dU){dU.setLayoutProperties(dW);
}
if(dX){qx.lang.Array.insertBefore(this.__ig,dU,dX);
}else{this.__ig.push(dU);
}this.__ii(dU,dW);
},_addBefore:function(dY,ea,eb){if(dY==ea){return;
}
if(!this.__ig){this.__ig=[];
}if(dY.getLayoutParent()==this){qx.lang.Array.remove(this.__ig,dY);
}qx.lang.Array.insertBefore(this.__ig,dY,ea);
this.__ii(dY,eb);
},_addAfter:function(ec,ed,ee){if(ec==ed){return;
}
if(!this.__ig){this.__ig=[];
}if(ec.getLayoutParent()==this){qx.lang.Array.remove(this.__ig,ec);
}qx.lang.Array.insertAfter(this.__ig,ec,ed);
this.__ii(ec,ee);
},_remove:function(ef){if(!this.__ig){throw new Error("This widget has no children!");
}qx.lang.Array.remove(this.__ig,ef);
this.__ij(ef);
},_removeAt:function(eg){if(!this.__ig){throw new Error("This widget has no children!");
}var eh=this.__ig[eg];
qx.lang.Array.removeAt(this.__ig,eg);
this.__ij(eh);
return eh;
},_removeAll:function(){if(!this.__ig){return [];
}var ei=this.__ig.concat();
this.__ig.length=0;

for(var i=ei.length-1;i>=0;i--){this.__ij(ei[i]);
}qx.ui.core.queue.Layout.add(this);
return ei;
},_afterAddChild:null,_afterRemoveChild:null,__ii:function(ej,ek){var parent=ej.getLayoutParent();

if(parent&&parent!=this){parent._remove(ej);
}ej.setLayoutParent(this);
if(ek){ej.setLayoutProperties(ek);
}else{this.updateLayoutProperties();
}if(this._afterAddChild){this._afterAddChild(ej);
}},__ij:function(em){if(em.getLayoutParent()!==this){throw new Error("Remove Error: "+em+" is not a child of this widget!");
}em.setLayoutParent(null);
if(this.__ic){this.__ic.invalidateChildrenCache();
}qx.ui.core.queue.Layout.add(this);
if(this._afterRemoveChild){this._afterRemoveChild(em);
}},capture:function(en){this.getContainerElement().capture(en);
},releaseCapture:function(){this.getContainerElement().releaseCapture();
},_applyPadding:function(eo,ep,name){this._updateInsets=true;
qx.ui.core.queue.Layout.add(this);
},_createProtectorElement:function(){if(this.__hY){return;
}var eq=this.__hY=new qx.html.Element;
eq.setStyles({position:cf,top:0,left:0,zIndex:7});
var er=this.getBounds();

if(er){this.__hY.setStyles({width:er.width+bY,height:er.height+bY});
}if((qx.core.Environment.get(bt)==cg)){eq.setStyles({backgroundImage:t+qx.util.ResourceManager.getInstance().toUri(bC)+q,backgroundRepeat:co});
}this.getContainerElement().add(eq);
},_applyDecorator:function(es,et){var ew=qx.ui.core.Widget.__hU;
var eu=this.getContainerElement();
if(!this.__hY&&!qx.core.Environment.get(g)){this._createProtectorElement();
}if(et){eu.remove(this.__hW);
ew.poolDecorator(this.__hW);
}if(es){var ev=this.__hW=ew.getDecoratorElement(es);
ev.setStyle(bL,5);
eu.add(ev);
}else{delete this.__hW;
}this._applyBackgroundColor(this.getBackgroundColor());
if(this.__id(et,es)){this._updateInsets=true;
qx.ui.core.queue.Layout.add(this);
}else if(es){var ex=this.getBounds();

if(ex){ev.resize(ex.width,ex.height);
this.__hY&&this.__hY.setStyles({width:ex.width+bY,height:ex.height+bY});
}}},_applyShadow:function(ey,ez){var eG=qx.ui.core.Widget.__hV;
var eB=this.getContainerElement();
if(ez){eB.remove(this.__hX);
eG.poolDecorator(this.__hX);
}if(ey){var eD=this.__hX=eG.getDecoratorElement(ey);
eB.add(eD);
var eF=eD.getInsets();
eD.setStyles({left:(-eF.left)+bY,top:(-eF.top)+bY});
var eE=this.getBounds();

if(eE){var eC=eE.width+eF.left+eF.right;
var eA=eE.height+eF.top+eF.bottom;
eD.resize(eC,eA);
}eD.tint(null);
}else{delete this.__hX;
}},_applyToolTipText:function(eH,eI){if(qx.core.Environment.get(bI)){if(this.__ib){return;
}var eJ=qx.locale.Manager.getInstance();
this.__ib=eJ.addListener(bz,function(){var eK=this.getToolTipText();

if(eK&&eK.translate){this.setToolTipText(eK.translate());
}},this);
}},_applyTextColor:function(eL,eM){},_applyZIndex:function(eN,eO){this.getContainerElement().setStyle(bL,eN==null?0:eN);
},_applyVisibility:function(eP,eQ){var eR=this.getContainerElement();

if(eP===bU){eR.show();
}else{eR.hide();
}var parent=this.$$parent;

if(parent&&(eQ==null||eP==null||eQ===bP||eP===bP)){parent.invalidateLayoutChildren();
}qx.ui.core.queue.Visibility.add(this);
},_applyOpacity:function(eS,eT){this.getContainerElement().setStyle(bO,eS==1?null:eS);
if((qx.core.Environment.get(bt)==cg)&&qx.bom.element.Decoration.isAlphaImageLoaderEnabled()){if(!qx.Class.isSubClassOf(this.getContentElement().constructor,qx.html.Image)){var eU=(eS==1||eS==null)?null:0.99;
this.getContentElement().setStyle(bO,eU);
}}},_applyCursor:function(eV,eW){if(eV==null&&!this.isSelectable()){eV=bN;
}this.getContainerElement().setStyle(Y,eV,qx.core.Environment.get(bt)==bD);
},_applyBackgroundColor:function(eX,eY){var fa=this.getBackgroundColor();
var fc=this.getContainerElement();

if(this.__hW){this.__hW.tint(fa);
fc.setStyle(cc,null);
}else{var fb=qx.theme.manager.Color.getInstance().resolve(fa);
fc.setStyle(cc,fb);
}},_applyFont:function(fd,fe){},__ik:null,$$stateChanges:null,_forwardStates:null,hasState:function(ff){var fg=this.__ik;
return !!fg&&!!fg[ff];
},addState:function(fh){var fi=this.__ik;

if(!fi){fi=this.__ik={};
}
if(fi[fh]){return;
}this.__ik[fh]=true;
if(fh===ch){this.syncAppearance();
}else if(!qx.ui.core.queue.Visibility.isVisible(this)){this.$$stateChanges=true;
}else{qx.ui.core.queue.Appearance.add(this);
}var forward=this._forwardStates;
var fl=this.__in;

if(forward&&forward[fh]&&fl){var fj;

for(var fk in fl){fj=fl[fk];

if(fj instanceof qx.ui.core.Widget){fl[fk].addState(fh);
}}}},removeState:function(fm){var fn=this.__ik;

if(!fn||!fn[fm]){return;
}delete this.__ik[fm];
if(fm===ch){this.syncAppearance();
}else if(!qx.ui.core.queue.Visibility.isVisible(this)){this.$$stateChanges=true;
}else{qx.ui.core.queue.Appearance.add(this);
}var forward=this._forwardStates;
var fq=this.__in;

if(forward&&forward[fm]&&fq){for(var fp in fq){var fo=fq[fp];

if(fo instanceof qx.ui.core.Widget){fo.removeState(fm);
}}}},replaceState:function(fr,fs){var ft=this.__ik;

if(!ft){ft=this.__ik={};
}
if(!ft[fs]){ft[fs]=true;
}
if(ft[fr]){delete ft[fr];
}
if(!qx.ui.core.queue.Visibility.isVisible(this)){this.$$stateChanges=true;
}else{qx.ui.core.queue.Appearance.add(this);
}var forward=this._forwardStates;
var fw=this.__in;

if(forward&&forward[fs]&&fw){for(var fv in fw){var fu=fw[fv];

if(fu instanceof qx.ui.core.Widget){fu.replaceState(fr,fs);
}}}},__il:null,__im:null,syncAppearance:function(){var fB=this.__ik;
var fA=this.__il;
var fC=qx.theme.manager.Appearance.getInstance();
var fy=qx.core.Property.$$method.setThemed;
var fG=qx.core.Property.$$method.resetThemed;
if(this.__im){delete this.__im;
if(fA){var fx=fC.styleFrom(fA,fB,null,this.getAppearance());
fA=null;
}}if(!fA){var fz=this;
var fF=[];

do{fF.push(fz.$$subcontrol||fz.getAppearance());
}while(fz=fz.$$subparent);
fA=fF.reverse().join(bf).replace(/#[0-9]+/g,bg);
this.__il=fA;
}var fD=fC.styleFrom(fA,fB,null,this.getAppearance());

if(fD){var fE;

if(fx){for(var fE in fx){if(fD[fE]===undefined){this[fG[fE]]();
}}}for(var fE in fD){fD[fE]===undefined?this[fG[fE]]():this[fy[fE]](fD[fE]);
}}else if(fx){for(var fE in fx){this[fG[fE]]();
}}this.fireDataEvent(cs,this.__ik);
},_applyAppearance:function(fH,fI){this.updateAppearance();
},checkAppearanceNeeds:function(){if(!this.__ia){qx.ui.core.queue.Appearance.add(this);
this.__ia=true;
}else if(this.$$stateChanges){qx.ui.core.queue.Appearance.add(this);
delete this.$$stateChanges;
}},updateAppearance:function(){this.__im=true;
qx.ui.core.queue.Appearance.add(this);
var fL=this.__in;

if(fL){var fJ;

for(var fK in fL){fJ=fL[fK];

if(fJ instanceof qx.ui.core.Widget){fJ.updateAppearance();
}}}},syncWidget:function(){},getEventTarget:function(){var fM=this;

while(fM.getAnonymous()){fM=fM.getLayoutParent();

if(!fM){return null;
}}return fM;
},getFocusTarget:function(){var fN=this;

if(!fN.getEnabled()){return null;
}
while(fN.getAnonymous()||!fN.getFocusable()){fN=fN.getLayoutParent();

if(!fN||!fN.getEnabled()){return null;
}}return fN;
},getFocusElement:function(){return this.getContainerElement();
},isTabable:function(){return (!!this.getContainerElement().getDomElement())&&this.isFocusable();
},_applyFocusable:function(fO,fP){var fQ=this.getFocusElement();
if(fO){var fR=this.getTabIndex();

if(fR==null){fR=1;
}fQ.setAttribute(bq,fR);
if((qx.core.Environment.get(bt)==cg)){fQ.setAttribute(y,B);
}else{fQ.setStyle(s,x);
}}else{if(fQ.isNativelyFocusable()){fQ.setAttribute(bq,-1);
}else if(fP){fQ.setAttribute(bq,null);
}}},_applyKeepFocus:function(fS){var fT=this.getFocusElement();
fT.setAttribute(bE,fS?bv:null);
},_applyKeepActive:function(fU){var fV=this.getContainerElement();
fV.setAttribute(bm,fU?bv:null);
},_applyTabIndex:function(fW){if(fW==null){fW=1;
}else if(fW<1||fW>32000){throw new Error("TabIndex property must be between 1 and 32000");
}
if(this.getFocusable()&&fW!=null){this.getFocusElement().setAttribute(bq,fW);
}},_applySelectable:function(fX,fY){if(fY!==null){this._applyCursor(this.getCursor());
}this.getContentElement().setSelectable(fX);
},_applyEnabled:function(ga,gb){if(ga===false){this.addState(cb);
this.removeState(ch);
if(this.isFocusable()){this.removeState(bp);
this._applyFocusable(false,true);
}if(this.isDraggable()){this._applyDraggable(false,true);
}if(this.isDroppable()){this._applyDroppable(false,true);
}}else{this.removeState(cb);
if(this.isFocusable()){this._applyFocusable(true,false);
}if(this.isDraggable()){this._applyDraggable(true,false);
}if(this.isDroppable()){this._applyDroppable(true,false);
}}},_applyNativeContextMenu:function(gc,gd,name){},_applyContextMenu:function(ge,gf){if(gf){gf.removeState(bs);

if(gf.getOpener()==this){gf.resetOpener();
}
if(!ge){this.removeListener(bs,this._onContextMenuOpen);
gf.removeListener(bo,this._onBeforeContextMenuOpen,this);
}}
if(ge){ge.setOpener(this);
ge.addState(bs);

if(!gf){this.addListener(bs,this._onContextMenuOpen);
ge.addListener(bo,this._onBeforeContextMenuOpen,this);
}}},_onContextMenuOpen:function(e){this.getContextMenu().openAtMouse(e);
e.stop();
},_onBeforeContextMenuOpen:function(e){if(e.getData()==bU&&this.hasListener(c)){this.fireDataEvent(c,e);
}},_onStopEvent:function(e){e.stopPropagation();
},_applyDraggable:function(gg,gh){if(!this.isEnabled()&&gg===true){gg=false;
}qx.ui.core.DragDropCursor.getInstance();
if(gg){this.addListener(cj,this._onDragStart);
this.addListener(cd,this._onDrag);
this.addListener(bK,this._onDragEnd);
this.addListener(bH,this._onDragChange);
}else{this.removeListener(cj,this._onDragStart);
this.removeListener(cd,this._onDrag);
this.removeListener(bK,this._onDragEnd);
this.removeListener(bH,this._onDragChange);
}this.getContainerElement().setAttribute(ct,gg?bv:null);
},_applyDroppable:function(gi,gj){if(!this.isEnabled()&&gi===true){gi=false;
}this.getContainerElement().setAttribute(ba,gi?bv:null);
},_onDragStart:function(e){qx.ui.core.DragDropCursor.getInstance().placeToMouse(e);
this.getApplicationRoot().setGlobalCursor(bN);
},_onDrag:function(e){qx.ui.core.DragDropCursor.getInstance().placeToMouse(e);
},_onDragEnd:function(e){qx.ui.core.DragDropCursor.getInstance().moveTo(-1000,-1000);
this.getApplicationRoot().resetGlobalCursor();
},_onDragChange:function(e){var gk=qx.ui.core.DragDropCursor.getInstance();
var gl=e.getCurrentAction();
gl?gk.setAction(gl):gk.resetAction();
},visualizeFocus:function(){this.addState(bp);
},visualizeBlur:function(){this.removeState(bp);
},scrollChildIntoView:function(gm,gn,go,gp){gp=typeof gp==bk?true:gp;
var gq=qx.ui.core.queue.Layout;
var parent;
if(gp){gp=!gq.isScheduled(gm);
parent=gm.getLayoutParent();
if(gp&&parent){gp=!gq.isScheduled(parent);
if(gp){parent.getChildren().forEach(function(gr){gp=gp&&!gq.isScheduled(gr);
});
}}}this.scrollChildIntoViewX(gm,gn,gp);
this.scrollChildIntoViewY(gm,go,gp);
},scrollChildIntoViewX:function(gs,gt,gu){this.getContentElement().scrollChildIntoViewX(gs.getContainerElement(),gt,gu);
},scrollChildIntoViewY:function(gv,gw,gx){this.getContentElement().scrollChildIntoViewY(gv.getContainerElement(),gw,gx);
},focus:function(){if(this.isFocusable()){this.getFocusElement().focus();
}else{throw new Error("Widget is not focusable!");
}},blur:function(){if(this.isFocusable()){this.getFocusElement().blur();
}else{throw new Error("Widget is not focusable!");
}},activate:function(){this.getContainerElement().activate();
},deactivate:function(){this.getContainerElement().deactivate();
},tabFocus:function(){this.getFocusElement().focus();
},hasChildControl:function(gy){if(!this.__in){return false;
}return !!this.__in[gy];
},__in:null,_getCreatedChildControls:function(){return this.__in;
},getChildControl:function(gz,gA){if(!this.__in){if(gA){return null;
}this.__in={};
}var gB=this.__in[gz];

if(gB){return gB;
}
if(gA===true){return null;
}return this._createChildControl(gz);
},_showChildControl:function(gC){var gD=this.getChildControl(gC);
gD.show();
return gD;
},_excludeChildControl:function(gE){var gF=this.getChildControl(gE,true);

if(gF){gF.exclude();
}},_isChildControlVisible:function(gG){var gH=this.getChildControl(gG,true);

if(gH){return gH.isVisible();
}return false;
},_createChildControl:function(gI){if(!this.__in){this.__in={};
}else if(this.__in[gI]){throw new Error("Child control '"+gI+"' already created!");
}var gM=gI.indexOf(L);

if(gM==-1){var gJ=this._createChildControlImpl(gI);
}else{var gJ=this._createChildControlImpl(gI.substring(0,gM),gI.substring(gM+1,gI.length));
}
if(!gJ){throw new Error("Unsupported control: "+gI);
}gJ.$$subcontrol=gI;
gJ.$$subparent=this;
var gK=this.__ik;
var forward=this._forwardStates;

if(gK&&forward&&gJ instanceof qx.ui.core.Widget){for(var gL in gK){if(forward[gL]){gJ.addState(gL);
}}}this.fireDataEvent(m,gJ);
return this.__in[gI]=gJ;
},_createChildControlImpl:function(gN,gO){return null;
},_disposeChildControls:function(){var gS=this.__in;

if(!gS){return;
}var gQ=qx.ui.core.Widget;

for(var gR in gS){var gP=gS[gR];

if(!gQ.contains(this,gP)){gP.destroy();
}else{gP.dispose();
}}delete this.__in;
},_findTopControl:function(){var gT=this;

while(gT){if(!gT.$$subparent){return gT;
}gT=gT.$$subparent;
}return null;
},getContainerLocation:function(gU){var gV=this.getContainerElement().getDomElement();
return gV?qx.bom.element.Location.get(gV,gU):null;
},getContentLocation:function(gW){var gX=this.getContentElement().getDomElement();
return gX?qx.bom.element.Location.get(gX,gW):null;
},setDomLeft:function(gY){var ha=this.getContainerElement().getDomElement();

if(ha){ha.style.left=gY+bY;
}else{throw new Error("DOM element is not yet created!");
}},setDomTop:function(hb){var hc=this.getContainerElement().getDomElement();

if(hc){hc.style.top=hb+bY;
}else{throw new Error("DOM element is not yet created!");
}},setDomPosition:function(hd,top){var he=this.getContainerElement().getDomElement();

if(he){he.style.left=hd+bY;
he.style.top=top+bY;
}else{throw new Error("DOM element is not yet created!");
}},destroy:function(){if(this.$$disposed){return;
}var parent=this.$$parent;

if(parent){parent._remove(this);
}qx.ui.core.queue.Dispose.add(this);
},clone:function(){var hf=qx.ui.core.LayoutItem.prototype.clone.call(this);

if(this.getChildren){var hg=this.getChildren();

for(var i=0,l=hg.length;i<l;i++){hf.add(hg[i].clone());
}}return hf;
}},destruct:function(){if(!qx.core.ObjectRegistry.inShutDown){if(qx.core.Environment.get(bI)){if(this.__ib){qx.locale.Manager.getInstance().removeListenerById(this.__ib);
}}this.getContainerElement().setAttribute(J,null,true);
this._disposeChildControls();
qx.ui.core.queue.Appearance.remove(this);
qx.ui.core.queue.Layout.remove(this);
qx.ui.core.queue.Visibility.remove(this);
qx.ui.core.queue.Widget.remove(this);
}
if(this.getContextMenu()){this.setContextMenu(null);
}if(!qx.core.ObjectRegistry.inShutDown){var hi=qx.ui.core.Widget;
var hh=this.getContainerElement();

if(this.__hW){hh.remove(this.__hW);
hi.__hU.poolDecorator(this.__hW);
}
if(this.__hX){hh.remove(this.__hX);
hi.__hV.poolDecorator(this.__hX);
}this.clearSeparators();
this.__hW=this.__hX=this.__ie=null;
}else{this._disposeArray(D);
this._disposeObjects(U,by);
}this._disposeArray(V);
this.__ik=this.__in=null;
this._disposeObjects(o,n,S,C);
}});
})();
(function(){var f="blur",e="focus",d="input",c="load",b="qx.ui.core.EventHandler",a="activate";
qx.Class.define(b,{extend:qx.core.Object,implement:qx.event.IEventHandler,construct:function(){qx.core.Object.call(this);
this.__eJ=qx.event.Registration.getManager(window);
},statics:{PRIORITY:qx.event.Registration.PRIORITY_FIRST,SUPPORTED_TYPES:{mousemove:1,mouseover:1,mouseout:1,mousedown:1,mouseup:1,click:1,dblclick:1,contextmenu:1,mousewheel:1,keyup:1,keydown:1,keypress:1,keyinput:1,capture:1,losecapture:1,focusin:1,focusout:1,focus:1,blur:1,activate:1,deactivate:1,appear:1,disappear:1,dragstart:1,dragend:1,dragover:1,dragleave:1,drop:1,drag:1,dragchange:1,droprequest:1,touchstart:1,touchend:1,touchmove:1,touchcancel:1,tap:1,swipe:1},IGNORE_CAN_HANDLE:false},members:{__eJ:null,__io:{focusin:1,focusout:1,focus:1,blur:1},__ip:{mouseover:1,mouseout:1,appear:1,disappear:1},canHandleEvent:function(g,h){return g instanceof qx.ui.core.Widget;
},_dispatchEvent:function(j){var p=j.getTarget();
var o=qx.ui.core.Widget.getWidgetByElement(p);
var q=false;

while(o&&o.isAnonymous()){var q=true;
o=o.getLayoutParent();
}if(o&&q&&j.getType()==a){o.getContainerElement().activate();
}if(this.__io[j.getType()]){o=o&&o.getFocusTarget();
if(!o){return;
}}if(j.getRelatedTarget){var x=j.getRelatedTarget();
var w=qx.ui.core.Widget.getWidgetByElement(x);

while(w&&w.isAnonymous()){w=w.getLayoutParent();
}
if(w){if(this.__io[j.getType()]){w=w.getFocusTarget();
}if(w===o){return;
}}}var s=j.getCurrentTarget();
var u=qx.ui.core.Widget.getWidgetByElement(s);

if(!u||u.isAnonymous()){return;
}if(this.__io[j.getType()]){u=u.getFocusTarget();
}var v=j.getType();

if(!u||!(u.isEnabled()||this.__ip[v])){return;
}var k=j.getEventPhase()==qx.event.type.Event.CAPTURING_PHASE;
var r=this.__eJ.getListeners(u,v,k);

if(!r||r.length===0){return;
}var m=qx.event.Pool.getInstance().getObject(j.constructor);
j.clone(m);
m.setTarget(o);
m.setRelatedTarget(w||null);
m.setCurrentTarget(u);
var y=j.getOriginalTarget();

if(y){var n=qx.ui.core.Widget.getWidgetByElement(y);

while(n&&n.isAnonymous()){n=n.getLayoutParent();
}m.setOriginalTarget(n);
}else{m.setOriginalTarget(p);
}for(var i=0,l=r.length;i<l;i++){var t=r[i].context||u;
r[i].handler.call(t,m);
}if(m.getPropagationStopped()){j.stopPropagation();
}
if(m.getDefaultPrevented()){j.preventDefault();
}qx.event.Pool.getInstance().poolObject(m);
},registerEvent:function(z,A,B){var C;

if(A===e||A===f){C=z.getFocusElement();
}else if(A===c||A===d){C=z.getContentElement();
}else{C=z.getContainerElement();
}
if(C){C.addListener(A,this._dispatchEvent,this,B);
}},unregisterEvent:function(D,E,F){var G;

if(E===e||E===f){G=D.getFocusElement();
}else if(E===c||E===d){G=D.getContentElement();
}else{G=D.getContainerElement();
}
if(G){G.removeListener(E,this._dispatchEvent,this,F);
}}},destruct:function(){this.__eJ=null;
},defer:function(H){qx.event.Registration.addHandler(H);
}});
})();
(function(){var t="",s='indexOf',r='slice',q='concat',p='toLocaleLowerCase',o="qx.type.BaseString",n='match',m='toLocaleUpperCase',k='search',j='replace',c='toLowerCase',h='charCodeAt',f='split',b='substring',a='lastIndexOf',e='substr',d='toUpperCase',g='charAt';
qx.Class.define(o,{extend:Object,construct:function(u){var u=u||t;
this.__iq=u;
this.length=u.length;
},members:{$$isString:true,length:0,__iq:null,toString:function(){return this.__iq;
},charAt:null,valueOf:null,charCodeAt:null,concat:null,indexOf:null,lastIndexOf:null,match:null,replace:null,search:null,slice:null,split:null,substr:null,substring:null,toLowerCase:null,toUpperCase:null,toHashCode:function(){return qx.core.ObjectRegistry.toHashCode(this);
},toLocaleLowerCase:null,toLocaleUpperCase:null,base:function(v,w){return qx.core.Object.prototype.base.apply(this,arguments);
}},defer:function(x,y){var z=[g,h,q,s,a,n,j,k,r,f,e,b,c,d,p,m];
y.valueOf=y.toString;

if(new x(t).valueOf()==null){delete y.valueOf;
}
for(var i=0,l=z.length;i<l;i++){y[z[i]]=String.prototype[z[i]];
}}});
})();
(function(){var a="qx.locale.LocalizedString";
qx.Class.define(a,{extend:qx.type.BaseString,construct:function(b,c,d){qx.type.BaseString.call(this,b);
this.__ir=c;
this.__is=d;
},members:{__ir:null,__is:null,translate:function(){return qx.locale.Manager.getInstance().translate(this.__ir,this.__is);
}}});
})();
(function(){var l="_",k="",j="locale",h="_applyLocale",g="changeLocale",f="C",e="locale.variant",d="qx.dynlocale",c="qx.locale.Manager",b="String",a="singleton";
qx.Class.define(c,{type:a,extend:qx.core.Object,construct:function(){qx.core.Object.call(this);
this.__it=qx.$$translations||{};
this.__iu=qx.$$locales||{};
var m=qx.core.Environment.get(j);
var n=qx.core.Environment.get(e);

if(n!==k){m+=l+n;
}this.__iv=m;
this.setLocale(m||this.__iw);
},statics:{tr:function(o,p){var q=qx.lang.Array.fromArguments(arguments);
q.splice(0,1);
return qx.locale.Manager.getInstance().translate(o,q);
},trn:function(r,s,t,u){var v=qx.lang.Array.fromArguments(arguments);
v.splice(0,3);
if(t!=1){return qx.locale.Manager.getInstance().translate(s,v);
}else{return qx.locale.Manager.getInstance().translate(r,v);
}},trc:function(w,x,y){var z=qx.lang.Array.fromArguments(arguments);
z.splice(0,2);
return qx.locale.Manager.getInstance().translate(x,z);
},marktr:function(A){return A;
}},properties:{locale:{check:b,nullable:true,apply:h,event:g}},members:{__iw:f,__ix:null,__iy:null,__it:null,__iu:null,__iv:null,getLanguage:function(){return this.__iy;
},getTerritory:function(){return this.getLocale().split(l)[1]||k;
},getAvailableLocales:function(B){var D=[];

for(var C in this.__iu){if(C!=this.__iw){if(this.__iu[C]===null&&!B){continue;
}D.push(C);
}}return D;
},__iz:function(E){var G;

if(E==null){return null;
}var F=E.indexOf(l);

if(F==-1){G=E;
}else{G=E.substring(0,F);
}return G;
},_applyLocale:function(H,I){this.__ix=H;
this.__iy=this.__iz(H);
},addTranslation:function(J,K){var L=this.__it;

if(L[J]){for(var M in K){L[J][M]=K[M];
}}else{L[J]=K;
}},addLocale:function(N,O){var P=this.__iu;

if(P[N]){for(var Q in O){P[N][Q]=O[Q];
}}else{P[N]=O;
}},translate:function(R,S,T){var U=this.__it;
return this.__iA(U,R,S,T);
},localize:function(V,W,X){var Y=this.__iu;
return this.__iA(Y,V,W,X);
},__iA:function(ba,bb,bc,bd){var be;

if(!ba){return bb;
}
if(bd){var bg=this.__iz(bd);
}else{bd=this.__ix;
bg=this.__iy;
}if(!be&&ba[bd]){be=ba[bd][bb];
}if(!be&&ba[bg]){be=ba[bg][bb];
}if(!be&&ba[this.__iw]){be=ba[this.__iw][bb];
}
if(!be){be=bb;
}
if(bc.length>0){var bf=[];

for(var i=0;i<bc.length;i++){var bh=bc[i];

if(bh&&bh.translate){bf[i]=bh.translate();
}else{bf[i]=bh;
}}be=qx.lang.String.format(be,bf);
}
if(qx.core.Environment.get(d)){be=new qx.locale.LocalizedString(be,bb,bc);
}return be;
}},destruct:function(){this.__it=this.__iu=null;
}});
})();
(function(){var f="-",e="",d="qx.bom.client.Locale",c="locale",b="android",a="locale.variant";
qx.Bootstrap.define(d,{statics:{getLocale:function(){var g=qx.bom.client.Locale.__iB();
var h=g.indexOf(f);

if(h!=-1){g=g.substr(0,h);
}return g;
},getVariant:function(){var i=qx.bom.client.Locale.__iB();
var k=e;
var j=i.indexOf(f);

if(j!=-1){k=i.substr(j+1);
}return k;
},__iB:function(){var l=(navigator.userLanguage||navigator.language||e);
if(qx.bom.client.OperatingSystem.getName()==b){var m=/(\w{2})-(\w{2})/i.exec(navigator.userAgent);

if(m){l=m[0];
}}return l.toLowerCase();
}},defer:function(n){qx.core.Environment.add(c,n.getLocale);
qx.core.Environment.add(a,n.getVariant);
}});
})();
(function(){var k="px",j="engine.name",i="div",h="img",g="",f="no-repeat",d="scale-x",c="mshtml",b="scale",a="b64",I="scale-y",H="qx/icon",G="repeat",F=".png",E="crop",D="engine.version",C="progid:DXImageTransform.Microsoft.AlphaImageLoader(src='",B='<div style="',A="repeat-y",z='<img src="',r="qx.bom.element.Decoration",s="', sizingMethod='",p='"/>',q="png",n="')",o='"></div>',l='" style="',m="none",t="webkit",u=" ",w="repeat-x",v="DXImageTransform.Microsoft.AlphaImageLoader",y="qx/static/blank.gif",x="absolute";
qx.Class.define(r,{statics:{DEBUG:false,__iC:{},__iD:(qx.core.Environment.get(j)==c)&&qx.core.Environment.get(D)<9,__iE:qx.core.Environment.select(j,{"mshtml":{"scale-x":true,"scale-y":true,"scale":true,"no-repeat":true},"default":null}),__iF:{"scale-x":h,"scale-y":h,"scale":h,"repeat":i,"no-repeat":i,"repeat-x":i,"repeat-y":i},update:function(J,K,L,M){var O=this.getTagName(L,K);

if(O!=J.tagName.toLowerCase()){throw new Error("Image modification not possible because elements could not be replaced at runtime anymore!");
}var P=this.getAttributes(K,L,M);

if(O===h){J.src=P.src||qx.util.ResourceManager.getInstance().toUri(y);
}if(J.style.backgroundPosition!=g&&P.style.backgroundPosition===undefined){P.style.backgroundPosition=null;
}if(J.style.clip!=g&&P.style.clip===undefined){P.style.clip=null;
}var N=qx.bom.element.Style;
N.setStyles(J,P.style);
if(this.__iD){try{J.filters[v].apply();
}catch(e){}}},create:function(Q,R,S){var T=this.getTagName(R,Q);
var V=this.getAttributes(Q,R,S);
var U=qx.bom.element.Style.compile(V.style);

if(T===h){return z+V.src+l+U+p;
}else{return B+U+o;
}},getTagName:function(W,X){if((qx.core.Environment.get(j)==c)){if(X&&this.__iD&&this.__iE[W]&&qx.lang.String.endsWith(X,F)){return i;
}}return this.__iF[W];
},getAttributes:function(Y,ba,bb){if(!bb){bb={};
}
if(!bb.position){bb.position=x;
}
if((qx.core.Environment.get(j)==c)){bb.fontSize=0;
bb.lineHeight=0;
}else if((qx.core.Environment.get(j)==t)){bb.WebkitUserDrag=m;
}var bd=qx.util.ResourceManager.getInstance().getImageFormat(Y)||qx.io.ImageLoader.getFormat(Y);
var bc;
if(this.__iD&&this.__iE[ba]&&bd===q){bc=this.__iI(bb,ba,Y);
}else{if(ba===b){bc=this.__iJ(bb,ba,Y);
}else if(ba===d||ba===I){bc=this.__iK(bb,ba,Y);
}else{bc=this.__iN(bb,ba,Y);
}}return bc;
},__iG:function(be,bf,bh){if(be.width==null&&bf!=null){be.width=bf+k;
}
if(be.height==null&&bh!=null){be.height=bh+k;
}return be;
},__iH:function(bi){var bj=qx.util.ResourceManager.getInstance().getImageWidth(bi)||qx.io.ImageLoader.getWidth(bi);
var bk=qx.util.ResourceManager.getInstance().getImageHeight(bi)||qx.io.ImageLoader.getHeight(bi);
return {width:bj,height:bk};
},__iI:function(bl,bm,bn){var bq=this.__iH(bn);
bl=this.__iG(bl,bq.width,bq.height);
var bp=bm==f?E:b;
var bo=C+qx.util.ResourceManager.getInstance().toUri(bn)+s+bp+n;
bl.filter=bo;
bl.backgroundImage=bl.backgroundRepeat=g;
return {style:bl};
},__iJ:function(br,bs,bt){var bu=qx.util.ResourceManager.getInstance().toUri(bt);
var bv=this.__iH(bt);
br=this.__iG(br,bv.width,bv.height);
return {src:bu,style:br};
},__iK:function(bw,bx,by){var bz=qx.util.ResourceManager.getInstance();
var bC=bz.getCombinedFormat(by);
var bE=this.__iH(by);
var bA;

if(bC){var bD=bz.getData(by);
var bB=bD[4];

if(bC==a){bA=bz.toDataUri(by);
}else{bA=bz.toUri(bB);
}
if(bx===d){bw=this.__iL(bw,bD,bE.height);
}else{bw=this.__iM(bw,bD,bE.width);
}return {src:bA,style:bw};
}else{if(bx==d){bw.height=bE.height==null?null:bE.height+k;
}else if(bx==I){bw.width=bE.width==null?null:bE.width+k;
}bA=bz.toUri(by);
return {src:bA,style:bw};
}},__iL:function(bF,bG,bH){var bI=qx.util.ResourceManager.getInstance().getImageHeight(bG[4]);
bF.clip={top:-bG[6],height:bH};
bF.height=bI+k;
if(bF.top!=null){bF.top=(parseInt(bF.top,10)+bG[6])+k;
}else if(bF.bottom!=null){bF.bottom=(parseInt(bF.bottom,10)+bH-bI-bG[6])+k;
}return bF;
},__iM:function(bJ,bK,bL){var bM=qx.util.ResourceManager.getInstance().getImageWidth(bK[4]);
bJ.clip={left:-bK[5],width:bL};
bJ.width=bM+k;
if(bJ.left!=null){bJ.left=(parseInt(bJ.left,10)+bK[5])+k;
}else if(bJ.right!=null){bJ.right=(parseInt(bJ.right,10)+bL-bM-bK[5])+k;
}return bJ;
},__iN:function(bN,bO,bP){var bS=qx.util.ResourceManager.getInstance();
var bX=bS.getCombinedFormat(bP);
var ca=this.__iH(bP);
if(bX&&bO!==G){var bY=bS.getData(bP);
var bW=bY[4];

if(bX==a){var bV=bS.toDataUri(bP);
var bU=bT=0;
}else{var bV=bS.toUri(bW);
var bU=bY[5];
var bT=bY[6];
}var bQ=qx.bom.element.Background.getStyles(bV,bO,bU,bT);

for(var bR in bQ){bN[bR]=bQ[bR];
}
if(ca.width!=null&&bN.width==null&&(bO==A||bO===f)){bN.width=ca.width+k;
}
if(ca.height!=null&&bN.height==null&&(bO==w||bO===f)){bN.height=ca.height+k;
}return {style:bN};
}else{bN=this.__iG(bN,ca.width,ca.height);
bN=this.__iO(bN,bP,bO);
return {style:bN};
}},__iO:function(cb,cc,cd){var top=null;
var ch=null;

if(cb.backgroundPosition){var ce=cb.backgroundPosition.split(u);
ch=parseInt(ce[0],10);

if(isNaN(ch)){ch=ce[0];
}top=parseInt(ce[1],10);

if(isNaN(top)){top=ce[1];
}}var cg=qx.bom.element.Background.getStyles(cc,cd,ch,top);

for(var cf in cg){cb[cf]=cg[cf];
}if(cb.filter){cb.filter=g;
}return cb;
},__iP:function(ci){if(this.DEBUG&&qx.util.ResourceManager.getInstance().has(ci)&&ci.indexOf(H)==-1){if(!this.__iC[ci]){qx.log.Logger.debug("Potential clipped image candidate: "+ci);
this.__iC[ci]=true;
}}},isAlphaImageLoaderEnabled:qx.core.Environment.select(j,{"mshtml":function(){return qx.bom.element.Decoration.__iD;
},"default":function(){return false;
}})}});
})();
(function(){var c="engine.name",b="load",a="qx.io.ImageLoader";
qx.Bootstrap.define(a,{statics:{__cM:{},__iQ:{width:null,height:null},__iR:/\.(png|gif|jpg|jpeg|bmp)\b/i,isLoaded:function(d){var e=this.__cM[d];
return !!(e&&e.loaded);
},isFailed:function(f){var g=this.__cM[f];
return !!(g&&g.failed);
},isLoading:function(h){var j=this.__cM[h];
return !!(j&&j.loading);
},getFormat:function(k){var m=this.__cM[k];
return m?m.format:null;
},getSize:function(n){var o=this.__cM[n];
return o?{width:o.width,height:o.height}:this.__iQ;
},getWidth:function(p){var q=this.__cM[p];
return q?q.width:null;
},getHeight:function(r){var s=this.__cM[r];
return s?s.height:null;
},load:function(t,u,v){var w=this.__cM[t];

if(!w){w=this.__cM[t]={};
}if(u&&!v){v=window;
}if(w.loaded||w.loading||w.failed){if(u){if(w.loading){w.callbacks.push(u,v);
}else{u.call(v,t,w);
}}}else{w.loading=true;
w.callbacks=[];

if(u){w.callbacks.push(u,v);
}var y=new Image();
var x=qx.lang.Function.listener(this.__iS,this,y,t);
y.onload=x;
y.onerror=x;
y.src=t;
w.element=y;
}},abort:function(z){var A=this.__cM[z];

if(A&&!A.loaded){A.aborted=true;
var C=A.callbacks;
var B=A.element;
B.onload=B.onerror=null;
delete A.callbacks;
delete A.element;
delete A.loading;

for(var i=0,l=C.length;i<l;i+=2){C[i].call(C[i+1],z,A);
}}this.__cM[z]=null;
},__iS:qx.event.GlobalError.observeMethod(function(event,D,E){var F=this.__cM[E];
if(event.type===b){F.loaded=true;
F.width=this.__iT(D);
F.height=this.__iU(D);
var G=this.__iR.exec(E);

if(G!=null){F.format=G[1];
}}else{F.failed=true;
}D.onload=D.onerror=null;
var H=F.callbacks;
delete F.loading;
delete F.callbacks;
delete F.element;
for(var i=0,l=H.length;i<l;i+=2){H[i].call(H[i+1],E,F);
}}),__iT:qx.core.Environment.select(c,{"gecko":function(I){return I.naturalWidth;
},"default":function(J){return J.width;
}}),__iU:qx.core.Environment.select(c,{"gecko":function(K){return K.naturalHeight;
},"default":function(L){return L.height;
}})}});
})();
(function(){var u="number",t="0",s="px",r=";",q="'",p="')",o="gecko",n="background-image:url(",m=");",l="",e=")",k="background-repeat:",h="engine.version",c="data:",b=" ",g="qx.bom.element.Background",f="url(",i="background-position:",a="base64",j="url('",d="engine.name";
qx.Class.define(g,{statics:{__iV:[n,null,m,i,null,r,k,null,r],__iW:{backgroundImage:null,backgroundPosition:null,backgroundRepeat:null},__iX:function(v,top){var w=qx.core.Environment.get(d);
var x=qx.core.Environment.get(h);

if(w==o&&x<1.9&&v==top&&typeof v==u){top+=0.01;
}
if(v){var z=(typeof v==u)?v+s:v;
}else{z=t;
}
if(top){var y=(typeof top==u)?top+s:top;
}else{y=t;
}return z+b+y;
},__iY:function(A){var String=qx.lang.String;
var B=A.substr(0,50);
return String.startsWith(B,c)&&String.contains(B,a);
},compile:function(C,D,E,top){var F=this.__iX(E,top);
var G=qx.util.ResourceManager.getInstance().toUri(C);

if(this.__iY(G)){G=q+G+q;
}var H=this.__iV;
H[1]=G;
H[4]=F;
H[7]=D;
return H.join(l);
},getStyles:function(I,J,K,top){if(!I){return this.__iW;
}var L=this.__iX(K,top);
var N=qx.util.ResourceManager.getInstance().toUri(I);
var O;

if(this.__iY(N)){O=j+N+p;
}else{O=f+N+e;
}var M={backgroundPosition:L,backgroundImage:O};

if(J!=null){M.backgroundRepeat=J;
}return M;
},set:function(P,Q,R,S,top){var T=this.getStyles(Q,R,S,top);

for(var U in T){P.style[U]=T[U];
}}}});
})();
(function(){var k="source",j="scale",i="engine.name",h="no-repeat",g="",f="mshtml",e="backgroundImage",d="webkit",c="div",b="qx.html.Image",a="qx/static/blank.gif";
qx.Class.define(b,{extend:qx.html.Element,members:{tagNameHint:null,_applyProperty:function(name,l){qx.html.Element.prototype._applyProperty.call(this,name,l);

if(name===k){var p=this.getDomElement();
var m=this.getAllStyles();

if(this.getNodeName()==c&&this.getStyle(e)){m.backgroundPosition=null;
m.backgroundRepeat=null;
}var n=this._getProperty(k);
var o=this._getProperty(j);
var q=o?j:h;
if(n!=null){n=n||null;
qx.bom.element.Decoration.update(p,n,q,m);
}}},_removeProperty:function(r,s){if(r==k){this._setProperty(r,g,s);
}else{this._setProperty(r,null,s);
}},_createDomElement:function(){var u=this._getProperty(j);
var v=u?j:h;

if((qx.core.Environment.get(i)==f)){var t=this._getProperty(k);

if(this.tagNameHint!=null){this.setNodeName(this.tagNameHint);
}else{this.setNodeName(qx.bom.element.Decoration.getTagName(v,t));
}}else{this.setNodeName(qx.bom.element.Decoration.getTagName(v));
}return qx.html.Element.prototype._createDomElement.call(this);
},_copyData:function(w){return qx.html.Element.prototype._copyData.call(this,true);
},setSource:function(x){this._setProperty(k,x);
return this;
},getSource:function(){return this._getProperty(k);
},resetSource:function(){if((qx.core.Environment.get(i)==d)){this._setProperty(k,a);
}else{this._removeProperty(k,true);
}return this;
},setScale:function(y){this._setProperty(j,y);
return this;
},getScale:function(){return this._getProperty(j);
}}});
})();
(function(){var j="Integer",i="interval",h="keep-align",g="disappear",f="best-fit",e="mouse",d="bottom-left",c="direct",b="Boolean",a="bottom-right",x="widget",w="qx.ui.core.MPlacement",v="left-top",u="offsetRight",t="shorthand",s="offsetLeft",r="top-left",q="appear",p="offsetBottom",o="top-right",m="offsetTop",n="right-bottom",k="right-top",l="left-bottom";
qx.Mixin.define(w,{statics:{__eV:null,setVisibleElement:function(y){this.__eV=y;
},getVisibleElement:function(){return this.__eV;
}},properties:{position:{check:[r,o,d,a,v,l,k,n],init:d,themeable:true},placeMethod:{check:[x,e],init:e,themeable:true},domMove:{check:b,init:false},placementModeX:{check:[c,h,f],init:h,themeable:true},placementModeY:{check:[c,h,f],init:h,themeable:true},offsetLeft:{check:j,init:0,themeable:true},offsetTop:{check:j,init:0,themeable:true},offsetRight:{check:j,init:0,themeable:true},offsetBottom:{check:j,init:0,themeable:true},offset:{group:[m,u,p,s],mode:t,themeable:true}},members:{__ja:null,__jb:null,__jc:null,getLayoutLocation:function(z){var C,B,D,top;
B=z.getBounds();
D=B.left;
top=B.top;
var E=B;
z=z.getLayoutParent();

while(z&&!z.isRootWidget()){B=z.getBounds();
D+=B.left;
top+=B.top;
C=z.getInsets();
D+=C.left;
top+=C.top;
z=z.getLayoutParent();
}if(z.isRootWidget()){var A=z.getContainerLocation();

if(A){D+=A.left;
top+=A.top;
}}return {left:D,top:top,right:D+E.width,bottom:top+E.height};
},moveTo:function(F,top){var H=qx.ui.core.MPlacement.getVisibleElement();
if(H){var J=this.getBounds();
var G=H.getContentLocation();
if(J&&G){var K=top+J.height;
var I=F+J.width;
if((I>G.left&&F<G.right)&&(K>G.top&&top<G.bottom)){F=Math.max(G.left-J.width,0);
}}}
if(this.getDomMove()){this.setDomPosition(F,top);
}else{this.setLayoutProperties({left:F,top:top});
}},placeToWidget:function(L,M){if(M){this.__jd();
this.__ja=qx.lang.Function.bind(this.placeToWidget,this,L,false);
qx.event.Idle.getInstance().addListener(i,this.__ja);
this.__jc=function(){this.__jd();
};
this.addListener(g,this.__jc,this);
}var N=L.getContainerLocation()||this.getLayoutLocation(L);
this.__jf(N);
},__jd:function(){if(this.__ja){qx.event.Idle.getInstance().removeListener(i,this.__ja);
this.__ja=null;
}
if(this.__jc){this.removeListener(g,this.__jc,this);
this.__jc=null;
}},placeToMouse:function(event){var P=event.getDocumentLeft();
var top=event.getDocumentTop();
var O={left:P,top:top,right:P,bottom:top};
this.__jf(O);
},placeToElement:function(Q,R){var location=qx.bom.element.Location.get(Q);
var S={left:location.left,top:location.top,right:location.left+Q.offsetWidth,bottom:location.top+Q.offsetHeight};
if(R){this.__ja=qx.lang.Function.bind(this.placeToElement,this,Q,false);
qx.event.Idle.getInstance().addListener(i,this.__ja);
this.addListener(g,function(){if(this.__ja){qx.event.Idle.getInstance().removeListener(i,this.__ja);
this.__ja=null;
}},this);
}this.__jf(S);
},placeToPoint:function(T){var U={left:T.left,top:T.top,right:T.left,bottom:T.top};
this.__jf(U);
},_getPlacementOffsets:function(){return {left:this.getOffsetLeft(),top:this.getOffsetTop(),right:this.getOffsetRight(),bottom:this.getOffsetBottom()};
},__je:function(V){var W=null;

if(this._computePlacementSize){var W=this._computePlacementSize();
}else if(this.isVisible()){var W=this.getBounds();
}
if(W==null){this.addListenerOnce(q,function(){this.__je(V);
},this);
}else{V.call(this,W);
}},__jf:function(X){this.__je(function(Y){var ba=qx.util.placement.Placement.compute(Y,this.getLayoutParent().getBounds(),X,this._getPlacementOffsets(),this.getPosition(),this.getPlacementModeX(),this.getPlacementModeY());
this.moveTo(ba.left,ba.top);
});
}},destruct:function(){this.__jd();
}});
})();
(function(){var f="interval",e="Number",d="_applyTimeoutInterval",c="qx.event.type.Event",b="qx.event.Idle",a="singleton";
qx.Class.define(b,{extend:qx.core.Object,type:a,construct:function(){qx.core.Object.call(this);
var g=new qx.event.Timer(this.getTimeoutInterval());
g.addListener(f,this._onInterval,this);
g.start();
this.__jg=g;
},events:{"interval":c},properties:{timeoutInterval:{check:e,init:100,apply:d}},members:{__jg:null,_applyTimeoutInterval:function(h){this.__jg.setInterval(h);
},_onInterval:function(){this.fireEvent(f);
}},destruct:function(){if(this.__jg){this.__jg.stop();
}this.__jg=null;
}});
})();
(function(){var o="top",n="right",m="bottom",l="left",k="align-start",j="qx.util.placement.AbstractAxis",i="edge-start",h="align-end",g="edge-end",f="-",c="best-fit",e="qx.util.placement.Placement",d="keep-align",b="direct",a='__jh';
qx.Class.define(e,{extend:qx.core.Object,construct:function(){qx.core.Object.call(this);
this.__jh=new qx.util.placement.DirectAxis();
},properties:{axisX:{check:j},axisY:{check:j},edge:{check:[o,n,m,l],init:o},align:{check:[o,n,m,l],init:n}},statics:{__ji:null,compute:function(p,q,r,s,t,u,v){this.__ji=this.__ji||new qx.util.placement.Placement();
var y=t.split(f);
var x=y[0];
var w=y[1];
this.__ji.set({axisX:this.__jm(u),axisY:this.__jm(v),edge:x,align:w});
return this.__ji.compute(p,q,r,s);
},__jj:null,__jk:null,__jl:null,__jm:function(z){switch(z){case b:this.__jj=this.__jj||new qx.util.placement.DirectAxis();
return this.__jj;
case d:this.__jk=this.__jk||new qx.util.placement.KeepAlignAxis();
return this.__jk;
case c:this.__jl=this.__jl||new qx.util.placement.BestFitAxis();
return this.__jl;
default:throw new Error("Invalid 'mode' argument!'");
}}},members:{__jh:null,compute:function(A,B,C,D){var E=this.getAxisX()||this.__jh;
var G=E.computeStart(A.width,{start:C.left,end:C.right},{start:D.left,end:D.right},B.width,this.__jn());
var F=this.getAxisY()||this.__jh;
var top=F.computeStart(A.height,{start:C.top,end:C.bottom},{start:D.top,end:D.bottom},B.height,this.__jo());
return {left:G,top:top};
},__jn:function(){var I=this.getEdge();
var H=this.getAlign();

if(I==l){return i;
}else if(I==n){return g;
}else if(H==l){return k;
}else if(H==n){return h;
}},__jo:function(){var K=this.getEdge();
var J=this.getAlign();

if(K==o){return i;
}else if(K==m){return g;
}else if(J==o){return k;
}else if(J==m){return h;
}}},destruct:function(){this._disposeObjects(a);
}});
})();
(function(){var e="edge-start",d="align-start",c="align-end",b="edge-end",a="qx.util.placement.AbstractAxis";
qx.Class.define(a,{extend:qx.core.Object,members:{computeStart:function(f,g,h,i,j){throw new Error("abstract method call!");
},_moveToEdgeAndAlign:function(k,l,m,n){switch(n){case e:return l.start-m.end-k;
case b:return l.end+m.start;
case d:return l.start+m.start;
case c:return l.end-m.end-k;
}},_isInRange:function(o,p,q){return o>=0&&o+p<=q;
}}});
})();
(function(){var a="qx.util.placement.DirectAxis";
qx.Class.define(a,{extend:qx.util.placement.AbstractAxis,members:{computeStart:function(b,c,d,e,f){return this._moveToEdgeAndAlign(b,c,d,f);
}}});
})();
(function(){var c="qx.util.placement.KeepAlignAxis",b="edge-start",a="edge-end";
qx.Class.define(c,{extend:qx.util.placement.AbstractAxis,members:{computeStart:function(d,e,f,g,h){var i=this._moveToEdgeAndAlign(d,e,f,h);
var j,k;

if(this._isInRange(i,d,g)){return i;
}
if(h==b||h==a){j=e.start-f.end;
k=e.end+f.start;
}else{j=e.end-f.end;
k=e.start+f.start;
}
if(j>g-k){i=j-d;
}else{i=k;
}return i;
}}});
})();
(function(){var a="qx.util.placement.BestFitAxis";
qx.Class.define(a,{extend:qx.util.placement.AbstractAxis,members:{computeStart:function(b,c,d,e,f){var g=this._moveToEdgeAndAlign(b,c,d,f);

if(this._isInRange(g,b,e)){return g;
}
if(g<0){g=Math.min(0,e-b);
}
if(g+b>e){g=Math.max(0,e-b);
}return g;
}}});
})();
(function(){var j="nonScaled",i="scaled",h="alphaScaled",g=".png",f="div",e="replacement",d="qx.event.type.Event",c="engine.name",b="hidden",a="Boolean",y="px",x="scale",w="__jp",v="changeSource",u="qx.ui.basic.Image",t="loaded",s="-disabled.$1",r="loadingFailed",q="String",p="_applySource",n="img",o="image",l="mshtml",m="_applyScale",k="no-repeat";
qx.Class.define(u,{extend:qx.ui.core.Widget,construct:function(z){this.__jp={};
qx.ui.core.Widget.call(this);

if(z){this.setSource(z);
}},properties:{source:{check:q,init:null,nullable:true,event:v,apply:p,themeable:true},scale:{check:a,init:false,themeable:true,apply:m},appearance:{refine:true,init:o},allowShrinkX:{refine:true,init:false},allowShrinkY:{refine:true,init:false},allowGrowX:{refine:true,init:false},allowGrowY:{refine:true,init:false}},events:{loadingFailed:d,loaded:d},members:{__jq:null,__jr:null,__fw:null,__jp:null,getContentElement:function(){return this.__jv();
},_createContentElement:function(){return this.__jv();
},_getContentHint:function(){return {width:this.__jq||0,height:this.__jr||0};
},_applyEnabled:function(A,B){qx.ui.core.Widget.prototype._applyEnabled.call(this,A,B);

if(this.getSource()){this._styleSource();
}},_applySource:function(C){this._styleSource();
},_applyScale:function(D){this._styleSource();
},__js:function(E){this.__fw=E;
},__jt:function(){if(this.__fw==null){var G=this.getSource();
var F=false;

if(G!=null){F=qx.lang.String.endsWith(G,g);
}
if(this.getScale()&&F&&qx.bom.element.Decoration.isAlphaImageLoaderEnabled()){this.__fw=h;
}else if(this.getScale()){this.__fw=i;
}else{this.__fw=j;
}}return this.__fw;
},__ju:function(H){var I;
var J;

if(H==h){I=true;
J=f;
}else if(H==j){I=false;
J=f;
}else{I=true;
J=n;
}var K=new qx.html.Image(J);
K.setScale(I);
K.setStyles({"overflowX":b,"overflowY":b});
return K;
},__jv:function(){var L=this.__jt();

if(this.__jp[L]==null){this.__jp[L]=this.__ju(L);
}return this.__jp[L];
},_styleSource:function(){var M=qx.util.AliasManager.getInstance().resolve(this.getSource());

if(!M){this.getContentElement().resetSource();
return;
}this.__jw(M);

if((qx.core.Environment.get(c)==l)){var N=this.getScale()?x:k;
this.getContentElement().tagNameHint=qx.bom.element.Decoration.getTagName(N,M);
}if(qx.util.ResourceManager.getInstance().has(M)){this.__jy(this.getContentElement(),M);
}else if(qx.io.ImageLoader.isLoaded(M)){this.__jz(this.getContentElement(),M);
}else{this.__jA(this.getContentElement(),M);
}},__jw:qx.core.Environment.select(c,{"mshtml":function(O){var Q=qx.bom.element.Decoration.isAlphaImageLoaderEnabled();
var P=qx.lang.String.endsWith(O,g);

if(Q&&P){if(this.getScale()&&this.__jt()!=h){this.__js(h);
}else if(!this.getScale()&&this.__jt()!=j){this.__js(j);
}}else{if(this.getScale()&&this.__jt()!=i){this.__js(i);
}else if(!this.getScale()&&this.__jt()!=j){this.__js(j);
}}this.__jx(this.__jv());
},"default":function(R){if(this.getScale()&&this.__jt()!=i){this.__js(i);
}else if(!this.getScale()&&this.__jt(j)){this.__js(j);
}this.__jx(this.__jv());
}}),__jx:function(S){var V=this.getContainerElement();
var W=V.getChild(0);

if(W!=S){if(W!=null){var Y=y;
var T={};
var U=this.getInnerSize();

if(U!=null){T.width=U.width+Y;
T.height=U.height+Y;
}var X=this.getInsets();
T.left=X.left+Y;
T.top=X.top+Y;
T.zIndex=10;
S.setStyles(T,true);
S.setSelectable(this.getSelectable());
}V.removeAt(0);
V.addAt(S,0);
}},__jy:function(ba,bb){var bd=qx.util.ResourceManager.getInstance();
if(!this.getEnabled()){var bc=bb.replace(/\.([a-z]+)$/,s);

if(bd.has(bc)){bb=bc;
this.addState(e);
}else{this.removeState(e);
}}if(ba.getSource()===bb){return;
}ba.setSource(bb);
this.__jC(bd.getImageWidth(bb),bd.getImageHeight(bb));
},__jz:function(be,bf){var bh=qx.io.ImageLoader;
be.setSource(bf);
var bg=bh.getWidth(bf);
var bi=bh.getHeight(bf);
this.__jC(bg,bi);
},__jA:function(bj,bk){var self;
var bl=qx.io.ImageLoader;
if(!bl.isFailed(bk)){bl.load(bk,this.__jB,this);
}else{if(bj!=null){bj.resetSource();
}}},__jB:function(bm,bn){if(this.$$disposed===true){return;
}if(bm!==qx.util.AliasManager.getInstance().resolve(this.getSource())){return;
}if(bn.failed){this.warn("Image could not be loaded: "+bm);
this.fireEvent(r);
}else if(bn.aborted){return ;
}else{this.fireEvent(t);
}this._styleSource();
},__jC:function(bo,bp){if(bo!==this.__jq||bp!==this.__jr){this.__jq=bo;
this.__jr=bp;
qx.ui.core.queue.Layout.add(this);
}}},destruct:function(){this._disposeMap(w);
}});
})();
(function(){var g="dragdrop-cursor",f="_applyAction",e="alias",d="qx.ui.core.DragDropCursor",c="move",b="singleton",a="copy";
qx.Class.define(d,{extend:qx.ui.basic.Image,include:qx.ui.core.MPlacement,type:b,construct:function(){qx.ui.basic.Image.call(this);
this.setZIndex(1e8);
this.setDomMove(true);
var h=this.getApplicationRoot();
h.add(this,{left:-1000,top:-1000});
},properties:{appearance:{refine:true,init:g},action:{check:[e,a,c],apply:f,nullable:true}},members:{_applyAction:function(i,j){if(j){this.removeState(j);
}
if(i){this.addState(i);
}}}});
})();
(function(){var d="qx.event.type.Data",c="qx.ui.container.Composite",b="addChildWidget",a="removeChildWidget";
qx.Class.define(c,{extend:qx.ui.core.Widget,include:[qx.ui.core.MChildrenHandling,qx.ui.core.MLayoutHandling],construct:function(e){qx.ui.core.Widget.call(this);

if(e!=null){this._setLayout(e);
}},events:{addChildWidget:d,removeChildWidget:d},members:{_afterAddChild:function(f){this.fireNonBubblingEvent(b,qx.event.type.Data,[f]);
},_afterRemoveChild:function(g){this.fireNonBubblingEvent(a,qx.event.type.Data,[g]);
}},defer:function(h,i){qx.ui.core.MChildrenHandling.remap(i);
qx.ui.core.MLayoutHandling.remap(i);
}});
})();
(function(){var e="qx.ui.popup.Popup",d="visible",c="excluded",b="popup",a="Boolean";
qx.Class.define(e,{extend:qx.ui.container.Composite,include:qx.ui.core.MPlacement,construct:function(f){qx.ui.container.Composite.call(this,f);
this.initVisibility();
},properties:{appearance:{refine:true,init:b},visibility:{refine:true,init:c},autoHide:{check:a,init:true}},members:{show:function(){if(this.getLayoutParent()==null){qx.core.Init.getApplication().getRoot().add(this);
}qx.ui.container.Composite.prototype.show.call(this);
},_applyVisibility:function(g,h){qx.ui.container.Composite.prototype._applyVisibility.call(this,g,h);
var i=qx.ui.popup.Manager.getInstance();
g===d?i.add(this):i.remove(this);
}},destruct:function(){qx.ui.popup.Manager.getInstance().remove(this);
}});
})();
(function(){var f="mousedown",d="blur",c="__jD",b="singleton",a="qx.ui.popup.Manager";
qx.Class.define(a,{type:b,extend:qx.core.Object,construct:function(){qx.core.Object.call(this);
this.__jD=[];
qx.event.Registration.addListener(document.documentElement,f,this.__jF,this,true);
qx.bom.Element.addListener(window,d,this.hideAll,this);
},members:{__jD:null,add:function(g){this.__jD.push(g);
this.__jE();
},remove:function(h){if(this.__jD){qx.lang.Array.remove(this.__jD,h);
this.__jE();
}},hideAll:function(){var j;
var k=this.__jD;

if(k){for(var i=0,l=k.length;i<l;i++){var j=k[i];
j.getAutoHide()&&j.exclude();
}}},__jE:function(){var m=1e7;

for(var i=0;i<this.__jD.length;i++){this.__jD[i].setZIndex(m++);
}},__jF:function(e){var o=qx.ui.core.Widget.getWidgetByElement(e.getTarget());
var p=this.__jD;

for(var i=0;i<p.length;i++){var n=p[i];

if(!n.getAutoHide()||o==n||qx.ui.core.Widget.contains(n,o)){continue;
}n.exclude();
}}},destruct:function(){qx.event.Registration.removeListener(document.documentElement,f,this.__jF,this,true);
this._disposeArray(c);
}});
})();
(function(){var l="atom",k="Integer",j="String",i="_applyRich",h="qx.ui.tooltip.ToolTip",g="_applyIcon",f="tooltip",d="qx.ui.core.Widget",c="mouseover",b="Boolean",a="_applyLabel";
qx.Class.define(h,{extend:qx.ui.popup.Popup,construct:function(m,n){qx.ui.popup.Popup.call(this);
this.setLayout(new qx.ui.layout.Grow);
this._createChildControl(l);
if(m!=null){this.setLabel(m);
}
if(n!=null){this.setIcon(n);
}this.addListener(c,this._onMouseOver,this);
},properties:{appearance:{refine:true,init:f},showTimeout:{check:k,init:700,themeable:true},hideTimeout:{check:k,init:4000,themeable:true},label:{check:j,nullable:true,apply:a},icon:{check:j,nullable:true,apply:g,themeable:true},rich:{check:b,init:false,apply:i},opener:{check:d,nullable:true}},members:{_createChildControlImpl:function(o,p){var q;

switch(o){case l:q=new qx.ui.basic.Atom;
this._add(q);
break;
}return q||qx.ui.popup.Popup.prototype._createChildControlImpl.call(this,o);
},_onMouseOver:function(e){this.hide();
},_applyIcon:function(r,s){var t=this.getChildControl(l);
r==null?t.resetIcon():t.setIcon(r);
},_applyLabel:function(u,v){var w=this.getChildControl(l);
u==null?w.resetLabel():w.setLabel(u);
},_applyRich:function(x,y){var z=this.getChildControl(l);
z.setRich(x);
}}});
})();
(function(){var b="abstract",a="qx.ui.layout.Abstract";
qx.Class.define(a,{type:b,extend:qx.core.Object,members:{__hC:null,_invalidChildrenCache:null,__jG:null,invalidateLayoutCache:function(){this.__hC=null;
},renderLayout:function(c,d){this.warn("Missing renderLayout() implementation!");
},getSizeHint:function(){if(this.__hC){return this.__hC;
}return this.__hC=this._computeSizeHint();
},hasHeightForWidth:function(){return false;
},getHeightForWidth:function(e){this.warn("Missing getHeightForWidth() implementation!");
return null;
},_computeSizeHint:function(){return null;
},invalidateChildrenCache:function(){this._invalidChildrenCache=true;
},verifyLayoutProperty:null,_clearSeparators:function(){var f=this.__jG;

if(f instanceof qx.ui.core.LayoutItem){f.clearSeparators();
}},_renderSeparator:function(g,h){this.__jG.renderSeparator(g,h);
},connectToWidget:function(i){if(i&&this.__jG){throw new Error("It is not possible to manually set the connected widget.");
}this.__jG=i;
this.invalidateChildrenCache();
},_getWidget:function(){return this.__jG;
},_applyLayoutChange:function(){if(this.__jG){this.__jG.scheduleLayoutUpdate();
}},_getLayoutChildren:function(){return this.__jG.getLayoutChildren();
}},destruct:function(){this.__jG=this.__hC=null;
}});
})();
(function(){var a="qx.ui.layout.Grow";
qx.Class.define(a,{extend:qx.ui.layout.Abstract,members:{verifyLayoutProperty:null,renderLayout:function(b,c){var g=this._getLayoutChildren();
var f,h,e,d;
for(var i=0,l=g.length;i<l;i++){f=g[i];
h=f.getSizeHint();
e=b;

if(e<h.minWidth){e=h.minWidth;
}else if(e>h.maxWidth){e=h.maxWidth;
}d=c;

if(d<h.minHeight){d=h.minHeight;
}else if(d>h.maxHeight){d=h.maxHeight;
}f.renderLayout(0,0,e,d);
}},_computeSizeHint:function(){var q=this._getLayoutChildren();
var o,s;
var r=0,p=0;
var n=0,k=0;
var j=Infinity,m=Infinity;
for(var i=0,l=q.length;i<l;i++){o=q[i];
s=o.getSizeHint();
r=Math.max(r,s.width);
p=Math.max(p,s.height);
n=Math.max(n,s.minWidth);
k=Math.max(k,s.minHeight);
j=Math.min(j,s.maxWidth);
m=Math.min(m,s.maxHeight);
}return {width:r,height:p,minWidth:n,minHeight:k,maxWidth:j,maxHeight:m};
}}});
})();
(function(){var j="label",i="icon",h="Boolean",g="both",f="String",e="left",d="changeGap",c="changeShow",b="bottom",a="_applyCenter",y="changeIcon",x="qx.ui.basic.Atom",w="changeLabel",v="Integer",u="_applyIconPosition",t="bottom-left",s="top-left",r="top",q="right",p="_applyRich",n="_applyIcon",o="_applyShow",l="_applyLabel",m="_applyGap",k="atom";
qx.Class.define(x,{extend:qx.ui.core.Widget,construct:function(z,A){qx.ui.core.Widget.call(this);
this._setLayout(new qx.ui.layout.Atom());

if(z!=null){this.setLabel(z);
}
if(A!=null){this.setIcon(A);
}},properties:{appearance:{refine:true,init:k},label:{apply:l,nullable:true,check:f,event:w},rich:{check:h,init:false,apply:p},icon:{check:f,apply:n,nullable:true,themeable:true,event:y},gap:{check:v,nullable:false,event:d,apply:m,themeable:true,init:4},show:{init:g,check:[g,j,i],themeable:true,inheritable:true,apply:o,event:c},iconPosition:{init:e,check:[r,q,b,e,s,t],themeable:true,apply:u},center:{init:false,check:h,themeable:true,apply:a}},members:{_createChildControlImpl:function(B,C){var D;

switch(B){case j:D=new qx.ui.basic.Label(this.getLabel());
D.setAnonymous(true);
D.setRich(this.getRich());
this._add(D);

if(this.getLabel()==null||this.getShow()===i){D.exclude();
}break;
case i:D=new qx.ui.basic.Image(this.getIcon());
D.setAnonymous(true);
this._addAt(D,0);

if(this.getIcon()==null||this.getShow()===j){D.exclude();
}break;
}return D||qx.ui.core.Widget.prototype._createChildControlImpl.call(this,B);
},_forwardStates:{focused:true,hovered:true},_handleLabel:function(){if(this.getLabel()==null||this.getShow()===i){this._excludeChildControl(j);
}else{this._showChildControl(j);
}},_handleIcon:function(){if(this.getIcon()==null||this.getShow()===j){this._excludeChildControl(i);
}else{this._showChildControl(i);
}},_applyLabel:function(E,F){var G=this.getChildControl(j,true);

if(G){G.setValue(E);
}this._handleLabel();
},_applyRich:function(H,I){var J=this.getChildControl(j,true);

if(J){J.setRich(H);
}},_applyIcon:function(K,L){var M=this.getChildControl(i,true);

if(M){M.setSource(K);
}this._handleIcon();
},_applyGap:function(N,O){this._getLayout().setGap(N);
},_applyShow:function(P,Q){this._handleLabel();
this._handleIcon();
},_applyIconPosition:function(R,S){this._getLayout().setIconPosition(R);
},_applyCenter:function(T,U){this._getLayout().setCenter(T);
},_applySelectable:function(V,W){qx.ui.core.Widget.prototype._applySelectable.call(this,V,W);
var X=this.getChildControl(j,true);

if(X){this.getChildControl(j).setSelectable(V);
}}}});
})();
(function(){var m="bottom",l="top",k="_applyLayoutChange",j="top-left",h="bottom-left",g="left",f="right",e="middle",d="center",c="qx.ui.layout.Atom",a="Integer",b="Boolean";
qx.Class.define(c,{extend:qx.ui.layout.Abstract,properties:{gap:{check:a,init:4,apply:k},iconPosition:{check:[g,l,f,m,j,h],init:g,apply:k},center:{check:b,init:false,apply:k}},members:{verifyLayoutProperty:null,renderLayout:function(n,o){var x=qx.ui.layout.Util;
var q=this.getIconPosition();
var t=this._getLayoutChildren();
var length=t.length;
var I,top,y,r;
var D,w;
var B=this.getGap();
var G=this.getCenter();
if(q===m||q===f){var z=length-1;
var u=-1;
var s=-1;
}else{var z=0;
var u=length;
var s=1;
}if(q==l||q==m){if(G){var C=0;

for(var i=z;i!=u;i+=s){r=t[i].getSizeHint().height;

if(r>0){C+=r;

if(i!=z){C+=B;
}}}top=Math.round((o-C)/2);
}else{top=0;
}
for(var i=z;i!=u;i+=s){D=t[i];
w=D.getSizeHint();
y=Math.min(w.maxWidth,Math.max(n,w.minWidth));
r=w.height;
I=x.computeHorizontalAlignOffset(d,y,n);
D.renderLayout(I,top,y,r);
if(r>0){top+=r+B;
}}}else{var v=n;
var p=null;
var F=0;

for(var i=z;i!=u;i+=s){D=t[i];
y=D.getSizeHint().width;

if(y>0){if(!p&&D instanceof qx.ui.basic.Label){p=D;
}else{v-=y;
}F++;
}}
if(F>1){var E=(F-1)*B;
v-=E;
}
if(p){var w=p.getSizeHint();
var A=Math.max(w.minWidth,Math.min(v,w.maxWidth));
v-=A;
}
if(G&&v>0){I=Math.round(v/2);
}else{I=0;
}
for(var i=z;i!=u;i+=s){D=t[i];
w=D.getSizeHint();
r=Math.min(w.maxHeight,Math.max(o,w.minHeight));

if(D===p){y=A;
}else{y=w.width;
}var H=e;

if(q==j){H=l;
}else if(q==h){H=m;
}top=x.computeVerticalAlignOffset(H,w.height,o);
D.renderLayout(I,top,y,r);
if(y>0){I+=y+B;
}}}},_computeSizeHint:function(){var T=this._getLayoutChildren();
var length=T.length;
var L,R;
if(length===1){var L=T[0].getSizeHint();
R={width:L.width,height:L.height,minWidth:L.minWidth,minHeight:L.minHeight};
}else{var P=0,Q=0;
var M=0,O=0;
var N=this.getIconPosition();
var S=this.getGap();

if(N===l||N===m){var J=0;

for(var i=0;i<length;i++){L=T[i].getSizeHint();
Q=Math.max(Q,L.width);
P=Math.max(P,L.minWidth);
if(L.height>0){O+=L.height;
M+=L.minHeight;
J++;
}}
if(J>1){var K=(J-1)*S;
O+=K;
M+=K;
}}else{var J=0;

for(var i=0;i<length;i++){L=T[i].getSizeHint();
O=Math.max(O,L.height);
M=Math.max(M,L.minHeight);
if(L.width>0){Q+=L.width;
P+=L.minWidth;
J++;
}}
if(J>1){var K=(J-1)*S;
Q+=K;
P+=K;
}}R={minWidth:P,width:Q,minHeight:M,height:O};
}return R;
}}});
})();
(function(){var g="middle",f="qx.ui.layout.Util",e="left",d="center",c="top",b="bottom",a="right";
qx.Class.define(f,{statics:{PERCENT_VALUE:/[0-9]+(?:\.[0-9]+)?%/,computeFlexOffsets:function(h,j,k){var n,r,m,s;
var o=j>k;
var t=Math.abs(j-k);
var u,p;
var q={};

for(r in h){n=h[r];
q[r]={potential:o?n.max-n.value:n.value-n.min,flex:o?n.flex:1/n.flex,offset:0};
}while(t!=0){s=Infinity;
m=0;

for(r in q){n=q[r];

if(n.potential>0){m+=n.flex;
s=Math.min(s,n.potential/n.flex);
}}if(m==0){break;
}s=Math.min(t,s*m)/m;
u=0;

for(r in q){n=q[r];

if(n.potential>0){p=Math.min(t,n.potential,Math.ceil(s*n.flex));
u+=p-s*n.flex;

if(u>=1){u-=1;
p-=1;
}n.potential-=p;

if(o){n.offset+=p;
}else{n.offset-=p;
}t-=p;
}}}return q;
},computeHorizontalAlignOffset:function(v,w,x,y,z){if(y==null){y=0;
}
if(z==null){z=0;
}var A=0;

switch(v){case e:A=y;
break;
case a:A=x-w-z;
break;
case d:A=Math.round((x-w)/2);
if(A<y){A=y;
}else if(A<z){A=Math.max(y,x-w-z);
}break;
}return A;
},computeVerticalAlignOffset:function(B,C,D,E,F){if(E==null){E=0;
}
if(F==null){F=0;
}var G=0;

switch(B){case c:G=E;
break;
case b:G=D-C-F;
break;
case g:G=Math.round((D-C)/2);
if(G<E){G=E;
}else if(G<F){G=Math.max(E,D-C-F);
}break;
}return G;
},collapseMargins:function(H){var I=0,K=0;

for(var i=0,l=arguments.length;i<l;i++){var J=arguments[i];

if(J<0){K=Math.min(K,J);
}else if(J>0){I=Math.max(I,J);
}}return I+K;
},computeHorizontalGaps:function(L,M,N){if(M==null){M=0;
}var O=0;

if(N){O+=L[0].getMarginLeft();

for(var i=1,l=L.length;i<l;i+=1){O+=this.collapseMargins(M,L[i-1].getMarginRight(),L[i].getMarginLeft());
}O+=L[l-1].getMarginRight();
}else{for(var i=1,l=L.length;i<l;i+=1){O+=L[i].getMarginLeft()+L[i].getMarginRight();
}O+=(M*(l-1));
}return O;
},computeVerticalGaps:function(P,Q,R){if(Q==null){Q=0;
}var S=0;

if(R){S+=P[0].getMarginTop();

for(var i=1,l=P.length;i<l;i+=1){S+=this.collapseMargins(Q,P[i-1].getMarginBottom(),P[i].getMarginTop());
}S+=P[l-1].getMarginBottom();
}else{for(var i=1,l=P.length;i<l;i+=1){S+=P[i].getMarginTop()+P[i].getMarginBottom();
}S+=(Q*(l-1));
}return S;
},computeHorizontalSeparatorGaps:function(T,U,V){var Y=qx.theme.manager.Decoration.getInstance().resolve(V);
var X=Y.getInsets();
var W=X.left+X.right;
var ba=0;

for(var i=0,l=T.length;i<l;i++){var bb=T[i];
ba+=bb.getMarginLeft()+bb.getMarginRight();
}ba+=(U+W+U)*(l-1);
return ba;
},computeVerticalSeparatorGaps:function(bc,bd,be){var bh=qx.theme.manager.Decoration.getInstance().resolve(be);
var bg=bh.getInsets();
var bf=bg.top+bg.bottom;
var bi=0;

for(var i=0,l=bc.length;i<l;i++){var bj=bc[i];
bi+=bj.getMarginTop()+bj.getMarginBottom();
}bi+=(bd+bf+bd)*(l-1);
return bi;
},arrangeIdeals:function(bk,bl,bm,bn,bo,bp){if(bl<bk||bo<bn){if(bl<bk&&bo<bn){bl=bk;
bo=bn;
}else if(bl<bk){bo-=(bk-bl);
bl=bk;
if(bo<bn){bo=bn;
}}else if(bo<bn){bl-=(bn-bo);
bo=bn;
if(bl<bk){bl=bk;
}}}
if(bl>bm||bo>bp){if(bl>bm&&bo>bp){bl=bm;
bo=bp;
}else if(bl>bm){bo+=(bl-bm);
bl=bm;
if(bo>bp){bo=bp;
}}else if(bo>bp){bl+=(bo-bp);
bo=bp;
if(bl>bm){bl=bm;
}}}return {begin:bl,end:bo};
}}});
})();
(function(){var b="qx.event.type.Data",a="qx.ui.form.IStringForm";
qx.Interface.define(a,{events:{"changeValue":b},members:{setValue:function(c){return arguments.length==1;
},resetValue:function(){},getValue:function(){}}});
})();
(function(){var k="qx.dynlocale",j="Boolean",i="color",h="enabled",g="changeLocale",f="_applyTextAlign",d="qx.ui.core.Widget",c="nowrap",b="changeStatus",a="changeTextAlign",E="_applyWrap",D="changeValue",C="qx.ui.basic.Label",B="whiteSpace",A="css.textoverflow",z="html.xul",y="_applyValue",x="center",w="_applyBuddy",v="String",r="textAlign",s="right",p="justify",q="changeRich",n="normal",o="_applyRich",l="click",m="label",t="left",u="A";
qx.Class.define(C,{extend:qx.ui.core.Widget,implement:[qx.ui.form.IStringForm],construct:function(F){qx.ui.core.Widget.call(this);

if(F!=null){this.setValue(F);
}
if(qx.core.Environment.get(k)){qx.locale.Manager.getInstance().addListener(g,this._onChangeLocale,this);
}},properties:{rich:{check:j,init:false,event:q,apply:o},wrap:{check:j,init:true,apply:E},value:{check:v,apply:y,event:D,nullable:true},buddy:{check:d,apply:w,nullable:true,init:null,dereference:true},textAlign:{check:[t,x,s,p],nullable:true,themeable:true,apply:f,event:a},appearance:{refine:true,init:m},selectable:{refine:true,init:false},allowGrowX:{refine:true,init:false},allowGrowY:{refine:true,init:false},allowShrinkY:{refine:true,init:false}},members:{__jH:null,__jI:null,__jJ:null,__jK:null,__jL:null,_getContentHint:function(){if(this.__jI){this.__jM=this.__jN();
delete this.__jI;
}return {width:this.__jM.width,height:this.__jM.height};
},_hasHeightForWidth:function(){return this.getRich()&&this.getWrap();
},_applySelectable:function(G){if(!qx.core.Environment.get(A)&&qx.core.Environment.get(z)){if(G&&!this.isRich()){return;
}}qx.ui.core.Widget.prototype._applySelectable.call(this,G);
},_getContentHeightForWidth:function(H){if(!this.getRich()&&!this.getWrap()){return null;
}return this.__jN(H).height;
},_createContentElement:function(){return new qx.html.Label;
},_applyTextAlign:function(I,J){this.getContentElement().setStyle(r,I);
},_applyTextColor:function(K,L){if(K){this.getContentElement().setStyle(i,qx.theme.manager.Color.getInstance().resolve(K));
}else{this.getContentElement().removeStyle(i);
}},__jM:{width:0,height:0},_applyFont:function(M,N){if(N&&this.__jH&&this.__jL){this.__jH.removeListenerById(this.__jL);
this.__jL=null;
}var O;

if(M){this.__jH=qx.theme.manager.Font.getInstance().resolve(M);

if(this.__jH instanceof qx.bom.webfonts.WebFont){this.__jL=this.__jH.addListener(b,this._onWebFontStatusChange,this);
}O=this.__jH.getStyles();
}else{this.__jH=null;
O=qx.bom.Font.getDefaultStyles();
}this.getContentElement().setStyles(O);
this.__jI=true;
qx.ui.core.queue.Layout.add(this);
},__jN:function(P){var T=qx.bom.Label;
var R=this.getFont();
var Q=R?this.__jH.getStyles():qx.bom.Font.getDefaultStyles();
var content=this.getValue()||u;
var S=this.getRich();
return S?T.getHtmlSize(content,Q,P):T.getTextSize(content,Q);
},_applyBuddy:function(U,V){if(V!=null){V.removeBinding(this.__jJ);
this.__jJ=null;
this.removeListenerById(this.__jK);
this.__jK=null;
}
if(U!=null){this.__jJ=U.bind(h,this,h);
this.__jK=this.addListener(l,function(){if(U.isFocusable()){U.focus.apply(U);
}},this);
}},_applyRich:function(W){this.getContentElement().setRich(W);
this.__jI=true;
qx.ui.core.queue.Layout.add(this);
},_applyWrap:function(X,Y){if(X&&!this.isRich()){}
if(this.isRich()){var ba=X?n:c;
this.getContentElement().setStyle(B,ba);
}},_onChangeLocale:qx.core.Environment.select(k,{"true":function(e){var content=this.getValue();

if(content&&content.translate){this.setValue(content.translate());
}},"false":null}),_onWebFontStatusChange:function(bb){if(bb.getData().valid===true){this.__jI=true;
qx.ui.core.queue.Layout.add(this);
}},_applyValue:function(bc,bd){this.getContentElement().setValue(bc);
this.__jI=true;
qx.ui.core.queue.Layout.add(this);
}},destruct:function(){if(qx.core.Environment.get(k)){qx.locale.Manager.getInstance().removeListener(g,this._onChangeLocale,this);
}if(this.__jJ!=null){var be=this.getBuddy();

if(be!=null&&!be.isDisposed()){be.removeBinding(this.__jJ);
}}
if(this.__jH&&this.__jL){this.__jH.removeListenerById(this.__jL);
}this.__jH=this.__jJ=null;
}});
})();
(function(){var k="background",j="div",h="color",g="linear-gradient(0deg, white 0%, red 100%)",f="placeholder",e="content",d="OTextOverflow",c="MozBorderRadius",b="css.translate3d",a="css.boxmodel",K="qx.bom.client.Css",J='m11',I="input",H="-ms-linear-gradient(0deg, white 0%, red 100%)",G="css.borderradius",F="-moz-linear-gradient(0deg, white 0%, red 100%)",E="gradient",D="-webkit-linear-gradient(left, white, black)",C="MozBoxShadow",B="rgba(1, 2, 3, 0.5)",r="rgba",s="-o-linear-gradient(0deg, white 0%, red 100%)",p="css.gradients",q="borderRadius",n='WebKitCSSMatrix',o="WebkitBorderRadius",l="-webkit-gradient(linear,0% 0%,100% 100%,from(white), to(red))",m="mshtml",t="css.rgba",u="WebkitBoxShadow",w="css.placeholder",v="css.textoverflow",y="css.boxshadow",x="textOverflow",A="boxShadow",z="border";
qx.Bootstrap.define(K,{statics:{getBoxModel:function(){var content=qx.bom.client.Engine.getName()!==m||!qx.bom.client.Browser.getQuirksMode();
return content?e:z;
},getTextOverflow:function(){return x in document.documentElement.style||d in document.documentElement.style;
},getPlaceholder:function(){var i=document.createElement(I);
return f in i;
},getBorderRadius:function(){return q in document.documentElement.style||c in document.documentElement.style||o in document.documentElement.style;
},getBoxShadow:function(){return A in document.documentElement.style||C in document.documentElement.style||u in document.documentElement.style;
},getTranslate3d:function(){return n in window&&J in new WebKitCSSMatrix();
},getGradients:function(){var L;

try{L=document.createElement(j);
}catch(N){L=document.createElement();
}var M=[l,D,F,s,H,g];

for(var i=0;i<M.length;i++){try{L.style[k]=M[i];

if(L.style[k].indexOf(E)!=-1){return true;
}}catch(O){}}return false;
},getRgba:function(){var P;

try{P=document.createElement(j);
}catch(Q){P=document.createElement();
}try{P.style[h]=B;

if(P.style[h].indexOf(r)!=-1){return true;
}}catch(R){}return false;
}},defer:function(S){qx.core.Environment.add(v,S.getTextOverflow);
qx.core.Environment.add(w,S.getPlaceholder);
qx.core.Environment.add(G,S.getBorderRadius);
qx.core.Environment.add(y,S.getBoxShadow);
qx.core.Environment.add(p,S.getGradients);
qx.core.Environment.add(a,S.getBoxModel);
qx.core.Environment.add(b,S.getTranslate3d);
qx.core.Environment.add(t,S.getRgba);
}});
})();
(function(){var l="",k="audio",j="video",i="html.video.h264",h='video/ogg; codecs="theora, vorbis"',g="html.xul",f="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul",d="html.video.ogg",c="http://www.w3.org/TR/SVG11/feature#BasicStructure",b="html.storage.local",W='audio',V='video/mp4; codecs="avc1.42E01E, mp4a.40.2"',U="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///ywAAAAAAQABAAACAUwAOw==",T="html.audio",S="audio/mpeg",R="org.w3c.dom.svg",Q="html.classlist",P="html.video",O="html.geolocation",N="DOMTokenList",s="html.storage.session",t="1.1",q="html.audio.aif",r="audio/x-wav",o="html.canvas",p="audio/ogg",m="html.audio.mp3",n="audio/x-aiff",u="html.audio.au",w="html.xpath",D="qx.bom.client.Html",B='video',H="mshtml",F="html.vml",J="html.audio.ogg",I="label",y='video/webm; codecs="vp8, vorbis"',M="html.dataurl",L="html.webworker",K="html.dataset",x="1.0",z="html.audio.wav",A="html.filereader",C="audio/basic",E="html.svg",G="html.video.webm";
qx.Bootstrap.define(D,{statics:{getWebWorker:function(){return window.Worker!=null;
},getFileReader:function(){return window.FileReader!=null;
},getGeoLocation:function(){return navigator.geolocation!=null;
},getAudio:function(){return !!document.createElement(W).canPlayType;
},getAudioOgg:function(){if(!qx.bom.client.Html.getAudio()){return l;
}var a=document.createElement(k);
return a.canPlayType(p);
},getAudioMp3:function(){if(!qx.bom.client.Html.getAudio()){return l;
}var a=document.createElement(k);
return a.canPlayType(S);
},getAudioWav:function(){if(!qx.bom.client.Html.getAudio()){return l;
}var a=document.createElement(k);
return a.canPlayType(r);
},getAudioAu:function(){if(!qx.bom.client.Html.getAudio()){return l;
}var a=document.createElement(k);
return a.canPlayType(C);
},getAudioAif:function(){if(!qx.bom.client.Html.getAudio()){return l;
}var a=document.createElement(k);
return a.canPlayType(n);
},getVideo:function(){return !!document.createElement(B).canPlayType;
},getVideoOgg:function(){if(!qx.bom.client.Html.getVideo()){return l;
}var v=document.createElement(j);
return v.canPlayType(h);
},getVideoH264:function(){if(!qx.bom.client.Html.getVideo()){return l;
}var v=document.createElement(j);
return v.canPlayType(V);
},getVideoWebm:function(){if(!qx.bom.client.Html.getVideo()){return l;
}var v=document.createElement(j);
return v.canPlayType(y);
},getLocalStorage:function(){try{return window.localStorage!=null;
}catch(X){return false;
}},getSessionStorage:function(){try{return window.sessionStorage!=null;
}catch(Y){return false;
}},getClassList:function(){return !!(document.documentElement.classList&&qx.Bootstrap.getClass(document.documentElement.classList)===N);
},getXPath:function(){return !!document.evaluate;
},getXul:function(){try{document.createElementNS(f,I);
return true;
}catch(e){return false;
}},getSvg:function(){return document.implementation&&document.implementation.hasFeature&&(document.implementation.hasFeature(R,x)||document.implementation.hasFeature(c,t));
},getVml:function(){return qx.bom.client.Engine.getName()==H;
},getCanvas:function(){return !!window.CanvasRenderingContext2D;
},getDataUrl:function(ba){var bb=new Image();
bb.onload=bb.onerror=function(){window.setTimeout(function(){ba.call(null,(bb.width==1&&bb.height==1));
},0);
};
bb.src=U;
},getDataset:function(){return !!document.documentElement.dataset;
}},defer:function(bc){qx.core.Environment.add(L,bc.getWebWorker),qx.core.Environment.add(A,bc.getFileReader),qx.core.Environment.add(O,bc.getGeoLocation),qx.core.Environment.add(T,bc.getAudio),qx.core.Environment.add(J,bc.getAudioOgg),qx.core.Environment.add(m,bc.getAudioMp3),qx.core.Environment.add(z,bc.getAudioWav),qx.core.Environment.add(u,bc.getAudioAu),qx.core.Environment.add(q,bc.getAudioAif),qx.core.Environment.add(P,bc.getVideo),qx.core.Environment.add(d,bc.getVideoOgg),qx.core.Environment.add(i,bc.getVideoH264),qx.core.Environment.add(G,bc.getVideoWebm),qx.core.Environment.add(b,bc.getLocalStorage),qx.core.Environment.add(s,bc.getSessionStorage),qx.core.Environment.add(Q,bc.getClassList),qx.core.Environment.add(w,bc.getXPath),qx.core.Environment.add(g,bc.getXul),qx.core.Environment.add(o,bc.getCanvas),qx.core.Environment.add(E,bc.getSvg),qx.core.Environment.add(F,bc.getVml),qx.core.Environment.add(K,bc.getDataset),qx.core.Environment.addAsync(M,bc.getDataUrl);
}});
})();
(function(){var b="value",a="qx.html.Label";
qx.Class.define(a,{extend:qx.html.Element,members:{__jO:null,_applyProperty:function(name,c){qx.html.Element.prototype._applyProperty.call(this,name,c);

if(name==b){var d=this.getDomElement();
qx.bom.Label.setValue(d,c);
}},_createDomElement:function(){var f=this.__jO;
var e=qx.bom.Label.create(this._content,f);
return e;
},_copyData:function(g){return qx.html.Element.prototype._copyData.call(this,true);
},setRich:function(h){var i=this.getDomElement();

if(i){throw new Error("The label mode cannot be modified after initial creation");
}h=!!h;

if(this.__jO==h){return;
}this.__jO=h;
return this;
},setValue:function(j){this._setProperty(b,j);
return this;
},getValue:function(){return this._getProperty(b);
}}});
})();
(function(){var j="css.textoverflow",i="html.xul",h="div",g="auto",f="0",e="inherit",d="text",c="value",b="",a="engine.name",C="hidden",B="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul",A="nowrap",z="ellipsis",y="normal",x="block",w="label",v="px",u="crop",t="gecko",q="end",r="100%",o="visible",p="qx.bom.Label",m="opera",n="engine.version",k="mshtml",l="-1000px",s="absolute";
qx.Class.define(p,{statics:{__jP:{fontFamily:1,fontSize:1,fontWeight:1,fontStyle:1,lineHeight:1},__jQ:function(){var D=this.__jS(false);
document.body.insertBefore(D,document.body.firstChild);
return this._textElement=D;
},__jR:function(){var E=this.__jS(true);
document.body.insertBefore(E,document.body.firstChild);
return this._htmlElement=E;
},__jS:function(F){var G=qx.bom.Element.create(h);
var H=G.style;
H.width=H.height=g;
H.left=H.top=l;
H.visibility=C;
H.position=s;
H.overflow=o;
H.display=x;

if(F){H.whiteSpace=y;
}else{H.whiteSpace=A;

if(!qx.core.Environment.get(j)&&qx.core.Environment.get(i)){var I=document.createElementNS(B,w);
var H=I.style;
H.padding=f;
H.margin=f;
H.width=g;

for(var J in this.__jP){H[J]=e;
}G.appendChild(I);
}}return G;
},__jT:function(K){var L={};

if(K){L.whiteSpace=y;
}else if(!qx.core.Environment.get(j)&&qx.core.Environment.get(i)){L.display=x;
}else{L.overflow=C;
L.whiteSpace=A;
L.textOverflow=z;
if((qx.core.Environment.get(a)==m)){L.OTextOverflow=z;
}}return L;
},create:function(content,M,N){if(!N){N=window;
}
if(M){var O=N.document.createElement(h);
O.useHtml=true;
}else if(!qx.core.Environment.get(j)&&qx.core.Environment.get(i)){var O=N.document.createElement(h);
var Q=N.document.createElementNS(B,w);
var P=Q.style;
P.cursor=e;
P.color=e;
P.overflow=C;
P.maxWidth=r;
P.padding=f;
P.margin=f;
P.width=g;
for(var R in this.__jP){Q.style[R]=e;
}Q.setAttribute(u,q);
O.appendChild(Q);
}else{var O=N.document.createElement(h);
qx.bom.element.Style.setStyles(O,this.__jT(M));
}
if(content){this.setValue(O,content);
}return O;
},setValue:function(S,T){T=T||b;

if(S.useHtml){S.innerHTML=T;
}else if(!qx.core.Environment.get(j)&&qx.core.Environment.get(i)){S.firstChild.setAttribute(c,T);
}else{qx.bom.element.Attribute.set(S,d,T);
}},getValue:function(U){if(U.useHtml){return U.innerHTML;
}else if(!qx.core.Environment.get(j)&&qx.core.Environment.get(i)){return U.firstChild.getAttribute(c)||b;
}else{return qx.bom.element.Attribute.get(U,d);
}},getHtmlSize:function(content,V,W){var X=this._htmlElement||this.__jR();
X.style.width=W!=undefined?W+v:g;
X.innerHTML=content;
return this.__jU(X,V);
},getTextSize:function(Y,ba){var bb=this._textElement||this.__jQ();

if(!qx.core.Environment.get(j)&&qx.core.Environment.get(i)){bb.firstChild.setAttribute(c,Y);
}else{qx.bom.element.Attribute.set(bb,d,Y);
}return this.__jU(bb,ba);
},__jU:function(bc,bd){var be=this.__jP;

if(!bd){bd={};
}
for(var bf in be){bc.style[bf]=bd[bf]||b;
}var bg=qx.bom.element.Dimension.getSize(bc);
if((qx.core.Environment.get(a)==t)){bg.width++;
}if((qx.core.Environment.get(a)==k)&&parseFloat(qx.core.Environment.get(n))>=9){bg.width++;
}return bg;
}}});
})();
(function(){var b="qx.event.type.Data",a="qx.ui.form.IForm";
qx.Interface.define(a,{events:{"changeEnabled":b,"changeValid":b,"changeInvalidMessage":b,"changeRequired":b},members:{setEnabled:function(c){return arguments.length==1;
},getEnabled:function(){},setRequired:function(d){return arguments.length==1;
},getRequired:function(){},setValid:function(e){return arguments.length==1;
},getValid:function(){},setInvalidMessage:function(f){return arguments.length==1;
},getInvalidMessage:function(){},setRequiredInvalidMessage:function(g){return arguments.length==1;
},getRequiredInvalidMessage:function(){}}});
})();
(function(){var a="qx.application.Standalone";
qx.Class.define(a,{extend:qx.application.AbstractGui,members:{_createRootWidget:function(){return new qx.ui.root.Application(document);
}}});
})();
(function(){var i="qx.ui.window.Window",h="changeModal",g="changeVisibility",f="changeActive",d="_applyActiveWindow",c="__eJ",b="__jV",a="qx.ui.window.MDesktop";
qx.Mixin.define(a,{properties:{activeWindow:{check:i,apply:d,init:null,nullable:true}},members:{__jV:null,__eJ:null,getWindowManager:function(){if(!this.__eJ){this.setWindowManager(new qx.ui.window.Window.DEFAULT_MANAGER_CLASS());
}return this.__eJ;
},supportsMaximize:function(){return true;
},setWindowManager:function(j){if(this.__eJ){this.__eJ.setDesktop(null);
}j.setDesktop(this);
this.__eJ=j;
},_onChangeActive:function(e){if(e.getData()){this.setActiveWindow(e.getTarget());
}else if(this.getActiveWindow()==e.getTarget()){this.setActiveWindow(null);
}},_applyActiveWindow:function(k,l){this.getWindowManager().changeActiveWindow(k,l);
this.getWindowManager().updateStack();
},_onChangeModal:function(e){this.getWindowManager().updateStack();
},_onChangeVisibility:function(){this.getWindowManager().updateStack();
},_afterAddChild:function(m){if(qx.Class.isDefined(i)&&m instanceof qx.ui.window.Window){this._addWindow(m);
}},_addWindow:function(n){if(!qx.lang.Array.contains(this.getWindows(),n)){this.getWindows().push(n);
n.addListener(f,this._onChangeActive,this);
n.addListener(h,this._onChangeModal,this);
n.addListener(g,this._onChangeVisibility,this);
}
if(n.getActive()){this.setActiveWindow(n);
}this.getWindowManager().updateStack();
},_afterRemoveChild:function(o){if(qx.Class.isDefined(i)&&o instanceof qx.ui.window.Window){this._removeWindow(o);
}},_removeWindow:function(p){qx.lang.Array.remove(this.getWindows(),p);
p.removeListener(f,this._onChangeActive,this);
p.removeListener(h,this._onChangeModal,this);
p.removeListener(g,this._onChangeVisibility,this);
this.getWindowManager().updateStack();
},getWindows:function(){if(!this.__jV){this.__jV=[];
}return this.__jV;
}},destruct:function(){this._disposeArray(b);
this._disposeObjects(c);
}});
})();
(function(){var f="_applyBlockerColor",e="Number",d="qx.ui.core.MBlocker",c="_applyBlockerOpacity",b="__jW",a="Color";
qx.Mixin.define(d,{construct:function(){this.__jW=this._createBlocker();
},properties:{blockerColor:{check:a,init:null,nullable:true,apply:f,themeable:true},blockerOpacity:{check:e,init:1,apply:c,themeable:true}},members:{__jW:null,_createBlocker:function(){return new qx.ui.core.Blocker(this);
},_applyBlockerColor:function(g,h){this.__jW.setColor(g);
},_applyBlockerOpacity:function(i,j){this.__jW.setOpacity(i);
},block:function(){this.__jW.block();
},isBlocked:function(){return this.__jW.isBlocked();
},unblock:function(){this.__jW.unblock();
},forceUnblock:function(){this.__jW.forceUnblock();
},blockContent:function(k){this.__jW.blockContent(k);
},isContentBlocked:function(){return this.__jW.isContentBlocked();
},unblockContent:function(){this.__jW.unblockContent();
},forceUnblockContent:function(){this.__jW.forceUnblockContent();
},getBlocker:function(){return this.__jW;
}},destruct:function(){this._disposeObjects(b);
}});
})();
(function(){var l="zIndex",k="px",j="keydown",h="deactivate",g="resize",f="keyup",d="keypress",c="backgroundColor",b="_applyOpacity",a="Boolean",x="opacity",w="interval",v="Tab",u="Color",t="qx.ui.root.Page",s="Number",r="__jg",q="qx.ui.core.Blocker",p="qx.ui.root.Application",o="__kc",m="__jW",n="_applyColor";
qx.Class.define(q,{extend:qx.core.Object,construct:function(y){qx.core.Object.call(this);
this._widget=y;
this._isPageRoot=(qx.Class.isDefined(t)&&y instanceof qx.ui.root.Page);

if(this._isPageRoot){y.addListener(g,this.__ke,this);
}
if(qx.Class.isDefined(p)&&y instanceof qx.ui.root.Application){this.setKeepBlockerActive(true);
}this.__jX=[];
this.__jY=[];
this.__ka=[];
},properties:{color:{check:u,init:null,nullable:true,apply:n,themeable:true},opacity:{check:s,init:1,apply:b,themeable:true},keepBlockerActive:{check:a,init:false}},members:{__jW:null,__kb:0,__kc:null,__ka:null,__jX:null,__jY:null,__kd:null,__jg:null,_isPageRoot:false,_widget:null,__ke:function(e){var z=e.getData();

if(this.isContentBlocked()){this.getContentBlockerElement().setStyles({width:z.width,height:z.height});
}
if(this.isBlocked()){this.getBlockerElement().setStyles({width:z.width,height:z.height});
}},_applyColor:function(A,B){var C=qx.theme.manager.Color.getInstance().resolve(A);
this.__kf(c,C);
},_applyOpacity:function(D,E){this.__kf(x,D);
},__kf:function(F,G){var H=[];
this.__jW&&H.push(this.__jW);
this.__kc&&H.push(this.__kc);

for(var i=0;i<H.length;i++){H[i].setStyle(F,G);
}},_backupActiveWidget:function(){var I=qx.event.Registration.getManager(window).getHandler(qx.event.handler.Focus);
this.__jX.push(I.getActive());
this.__jY.push(I.getFocus());

if(this._widget.isFocusable()){this._widget.focus();
}},_restoreActiveWidget:function(){var L=this.__jX.length;

if(L>0){var K=this.__jX[L-1];

if(K){qx.bom.Element.activate(K);
}this.__jX.pop();
}var J=this.__jY.length;

if(J>0){var K=this.__jY[J-1];

if(K){qx.bom.Element.focus(this.__jY[J-1]);
}this.__jY.pop();
}},__kg:function(){return new qx.html.Blocker(this.getColor(),this.getOpacity());
},getBlockerElement:function(){if(!this.__jW){this.__jW=this.__kg();
this.__jW.setStyle(l,15);
this._widget.getContainerElement().add(this.__jW);
this.__jW.exclude();
}return this.__jW;
},block:function(){this.__kb++;

if(this.__kb<2){this._backupActiveWidget();
var M=this.getBlockerElement();
M.include();
M.activate();
M.addListener(h,this.__kl,this);
M.addListener(d,this.__kk,this);
M.addListener(j,this.__kk,this);
M.addListener(f,this.__kk,this);
}},isBlocked:function(){return this.__kb>0;
},unblock:function(){if(!this.isBlocked()){return;
}this.__kb--;

if(this.__kb<1){this.__kh();
this.__kb=0;
}},forceUnblock:function(){if(!this.isBlocked()){return;
}this.__kb=0;
this.__kh();
},__kh:function(){this._restoreActiveWidget();
var N=this.getBlockerElement();
N.removeListener(h,this.__kl,this);
N.removeListener(d,this.__kk,this);
N.removeListener(j,this.__kk,this);
N.removeListener(f,this.__kk,this);
N.exclude();
},getContentBlockerElement:function(){if(!this.__kc){this.__kc=this.__kg();
this._widget.getContentElement().add(this.__kc);
this.__kc.exclude();
}return this.__kc;
},blockContent:function(O){var P=this.getContentBlockerElement();
P.setStyle(l,O);
this.__ka.push(O);

if(this.__ka.length<2){P.include();

if(this._isPageRoot){if(!this.__jg){this.__jg=new qx.event.Timer(300);
this.__jg.addListener(w,this.__kj,this);
}this.__jg.start();
this.__kj();
}}},isContentBlocked:function(){return this.__ka.length>0;
},unblockContent:function(){if(!this.isContentBlocked()){return;
}this.__ka.pop();
var Q=this.__ka[this.__ka.length-1];
var R=this.getContentBlockerElement();
R.setStyle(l,Q);

if(this.__ka.length<1){this.__ki();
this.__ka=[];
}},forceUnblockContent:function(){if(!this.isContentBlocked()){return;
}this.__ka=[];
var S=this.getContentBlockerElement();
S.setStyle(l,null);
this.__ki();
},__ki:function(){this.getContentBlockerElement().exclude();

if(this._isPageRoot){this.__jg.stop();
}},__kj:function(){var T=this._widget.getContainerElement().getDomElement();
var U=qx.dom.Node.getDocument(T);
this.getContentBlockerElement().setStyles({height:U.documentElement.scrollHeight+k,width:U.documentElement.scrollWidth+k});
},__kk:function(e){if(e.getKeyIdentifier()==v){e.stop();
}},__kl:function(){if(this.getKeepBlockerActive()){this.getBlockerElement().activate();
}}},destruct:function(){if(this._isPageRoot){this._widget.removeListener(g,this.__ke,this);
}this._disposeObjects(o,m,r);
this.__kd=this.__jX=this.__jY=this._widget=this.__ka=null;
}});
})();
(function(){var t="engine.name",s="help",r="contextmenu",q="changeGlobalCursor",p="keypress",o="Boolean",n="root",m="",l=" !important",k="input",d="_applyGlobalCursor",j="Space",h="_applyNativeHelp",c=";",b="qx.ui.root.Abstract",g="abstract",f="textarea",i="String",a="*";
qx.Class.define(b,{type:g,extend:qx.ui.core.Widget,include:[qx.ui.core.MChildrenHandling,qx.ui.core.MBlocker,qx.ui.window.MDesktop],construct:function(){qx.ui.core.Widget.call(this);
qx.ui.core.FocusHandler.getInstance().addRoot(this);
qx.ui.core.queue.Visibility.add(this);
this.initNativeHelp();
this.addListener(p,this.__kn,this);
},properties:{appearance:{refine:true,init:n},enabled:{refine:true,init:true},focusable:{refine:true,init:true},globalCursor:{check:i,nullable:true,themeable:true,apply:d,event:q},nativeContextMenu:{refine:true,init:false},nativeHelp:{check:o,init:false,apply:h}},members:{__km:null,isRootWidget:function(){return true;
},getLayout:function(){return this._getLayout();
},_applyGlobalCursor:qx.core.Environment.select(t,{"mshtml":function(u,v){},"default":function(w,x){var y=qx.bom.Stylesheet;
var z=this.__km;

if(!z){this.__km=z=y.createElement();
}y.removeAllRules(z);

if(w){y.addRule(z,a,qx.bom.element.Cursor.compile(w).replace(c,m)+l);
}}}),_applyNativeContextMenu:function(A,B){if(A){this.removeListener(r,this._onNativeContextMenu,this,true);
}else{this.addListener(r,this._onNativeContextMenu,this,true);
}},_onNativeContextMenu:function(e){if(e.getTarget().getNativeContextMenu()){return;
}e.preventDefault();
},__kn:function(e){if(e.getKeyIdentifier()!==j){return;
}var D=e.getTarget();
var C=qx.ui.core.FocusHandler.getInstance();

if(!C.isFocused(D)){return;
}var E=D.getContentElement().getNodeName();

if(E===k||E===f){return;
}e.preventDefault();
},_applyNativeHelp:qx.core.Environment.select(t,{"mshtml":function(F,G){if(G===false){qx.bom.Event.removeNativeListener(document,s,qx.lang.Function.returnFalse);
}
if(F===false){qx.bom.Event.addNativeListener(document,s,qx.lang.Function.returnFalse);
}},"default":function(){}})},destruct:function(){this.__km=null;
},defer:function(H,I){qx.ui.core.MChildrenHandling.remap(I);
}});
})();
(function(){var k="keypress",j="focusout",h="activate",g="Tab",f="singleton",d="deactivate",c="__ko",b="focusin",a="qx.ui.core.FocusHandler";
qx.Class.define(a,{extend:qx.core.Object,type:f,construct:function(){qx.core.Object.call(this);
this.__ko={};
},members:{__ko:null,__kp:null,__kq:null,__kr:null,connectTo:function(m){m.addListener(k,this.__gr,this);
m.addListener(b,this._onFocusIn,this,true);
m.addListener(j,this._onFocusOut,this,true);
m.addListener(h,this._onActivate,this,true);
m.addListener(d,this._onDeactivate,this,true);
},addRoot:function(n){this.__ko[n.$$hash]=n;
},removeRoot:function(o){delete this.__ko[o.$$hash];
},getActiveWidget:function(){return this.__kp;
},isActive:function(p){return this.__kp==p;
},getFocusedWidget:function(){return this.__kq;
},isFocused:function(q){return this.__kq==q;
},isFocusRoot:function(r){return !!this.__ko[r.$$hash];
},_onActivate:function(e){var t=e.getTarget();
this.__kp=t;
var s=this.__ks(t);

if(s!=this.__kr){this.__kr=s;
}},_onDeactivate:function(e){var u=e.getTarget();

if(this.__kp==u){this.__kp=null;
}},_onFocusIn:function(e){var v=e.getTarget();

if(v!=this.__kq){this.__kq=v;
v.visualizeFocus();
}},_onFocusOut:function(e){var w=e.getTarget();

if(w==this.__kq){this.__kq=null;
w.visualizeBlur();
}},__gr:function(e){if(e.getKeyIdentifier()!=g){return;
}
if(!this.__kr){return;
}e.stopPropagation();
e.preventDefault();
var x=this.__kq;

if(!e.isShiftPressed()){var y=x?this.__kw(x):this.__ku();
}else{var y=x?this.__kx(x):this.__kv();
}if(y){y.tabFocus();
}},__ks:function(z){var A=this.__ko;

while(z){if(A[z.$$hash]){return z;
}z=z.getLayoutParent();
}return null;
},__kt:function(B,C){if(B===C){return 0;
}var E=B.getTabIndex()||0;
var D=C.getTabIndex()||0;

if(E!=D){return E-D;
}var J=B.getContainerElement().getDomElement();
var I=C.getContainerElement().getDomElement();
var H=qx.bom.element.Location;
var G=H.get(J);
var F=H.get(I);
if(G.top!=F.top){return G.top-F.top;
}if(G.left!=F.left){return G.left-F.left;
}var K=B.getZIndex();
var L=C.getZIndex();

if(K!=L){return K-L;
}return 0;
},__ku:function(){return this.__kA(this.__kr,null);
},__kv:function(){return this.__kB(this.__kr,null);
},__kw:function(M){var N=this.__kr;

if(N==M){return this.__ku();
}
while(M&&M.getAnonymous()){M=M.getLayoutParent();
}
if(M==null){return [];
}var O=[];
this.__ky(N,M,O);
O.sort(this.__kt);
var P=O.length;
return P>0?O[0]:this.__ku();
},__kx:function(Q){var R=this.__kr;

if(R==Q){return this.__kv();
}
while(Q&&Q.getAnonymous()){Q=Q.getLayoutParent();
}
if(Q==null){return [];
}var S=[];
this.__kz(R,Q,S);
S.sort(this.__kt);
var T=S.length;
return T>0?S[T-1]:this.__kv();
},__ky:function(parent,U,V){var W=parent.getLayoutChildren();
var X;

for(var i=0,l=W.length;i<l;i++){X=W[i];
if(!(X instanceof qx.ui.core.Widget)){continue;
}
if(!this.isFocusRoot(X)&&X.isEnabled()&&X.isVisible()){if(X.isTabable()&&this.__kt(U,X)<0){V.push(X);
}this.__ky(X,U,V);
}}},__kz:function(parent,Y,ba){var bb=parent.getLayoutChildren();
var bc;

for(var i=0,l=bb.length;i<l;i++){bc=bb[i];
if(!(bc instanceof qx.ui.core.Widget)){continue;
}
if(!this.isFocusRoot(bc)&&bc.isEnabled()&&bc.isVisible()){if(bc.isTabable()&&this.__kt(Y,bc)>0){ba.push(bc);
}this.__kz(bc,Y,ba);
}}},__kA:function(parent,bd){var be=parent.getLayoutChildren();
var bf;

for(var i=0,l=be.length;i<l;i++){bf=be[i];
if(!(bf instanceof qx.ui.core.Widget)){continue;
}if(!this.isFocusRoot(bf)&&bf.isEnabled()&&bf.isVisible()){if(bf.isTabable()){if(bd==null||this.__kt(bf,bd)<0){bd=bf;
}}bd=this.__kA(bf,bd);
}}return bd;
},__kB:function(parent,bg){var bh=parent.getLayoutChildren();
var bi;

for(var i=0,l=bh.length;i<l;i++){bi=bh[i];
if(!(bi instanceof qx.ui.core.Widget)){continue;
}if(!this.isFocusRoot(bi)&&bi.isEnabled()&&bi.isVisible()){if(bi.isTabable()){if(bg==null||this.__kt(bi,bg)>0){bg=bi;
}}bg=this.__kB(bi,bg);
}}return bg;
}},destruct:function(){this._disposeMap(c);
this.__kq=this.__kp=this.__kr=null;
}});
})();
(function(){var n="resize",m="engine.name",l="position",k="0px",j="webkit",i="paddingLeft",h="$$widget",g="qx.ui.root.Application",f="hidden",d="div",a="paddingTop",c="100%",b="absolute";
qx.Class.define(g,{extend:qx.ui.root.Abstract,construct:function(o){this.__cv=qx.dom.Node.getWindow(o);
this.__kC=o;
qx.ui.root.Abstract.call(this);
qx.event.Registration.addListener(this.__cv,n,this._onResize,this);
this._setLayout(new qx.ui.layout.Canvas());
qx.ui.core.queue.Layout.add(this);
qx.ui.core.FocusHandler.getInstance().connectTo(this);
this.getContentElement().disableScrolling();
},members:{__cv:null,__kC:null,_createContainerElement:function(){var p=this.__kC;
if((qx.core.Environment.get(m)==j)){if(!p.body){alert("The application could not be started due to a missing body tag in the HTML file!");
}}var t=p.documentElement.style;
var q=p.body.style;
t.overflow=q.overflow=f;
t.padding=t.margin=q.padding=q.margin=k;
t.width=t.height=q.width=q.height=c;
var s=p.createElement(d);
p.body.appendChild(s);
var r=new qx.html.Root(s);
r.setStyle(l,b);
r.setAttribute(h,this.toHashCode());
return r;
},_onResize:function(e){qx.ui.core.queue.Layout.add(this);
if(qx.ui.popup&&qx.ui.popup.Manager){qx.ui.popup.Manager.getInstance().hideAll();
}if(qx.ui.menu&&qx.ui.menu.Manager){qx.ui.menu.Manager.getInstance().hideAll();
}},_computeSizeHint:function(){var u=qx.bom.Viewport.getWidth(this.__cv);
var v=qx.bom.Viewport.getHeight(this.__cv);
return {minWidth:u,width:u,maxWidth:u,minHeight:v,height:v,maxHeight:v};
},_applyPadding:function(w,x,name){if(w&&(name==a||name==i)){throw new Error("The root widget does not support 'left', or 'top' paddings!");
}qx.ui.root.Abstract.prototype._applyPadding.call(this,w,x,name);
},_applyDecorator:function(y,z){qx.ui.root.Abstract.prototype._applyDecorator.call(this,y,z);

if(!y){return;
}var A=this.getDecoratorElement().getInsets();

if(A.left||A.top){throw new Error("The root widget does not support decorators with 'left', or 'top' insets!");
}}},destruct:function(){this.__cv=this.__kC=null;
}});
})();
(function(){var b="number",a="qx.ui.layout.Canvas";
qx.Class.define(a,{extend:qx.ui.layout.Abstract,members:{verifyLayoutProperty:null,renderLayout:function(c,d){var q=this._getLayoutChildren();
var g,p,n;
var s,top,e,f,j,h;
var o,m,r,k;

for(var i=0,l=q.length;i<l;i++){g=q[i];
p=g.getSizeHint();
n=g.getLayoutProperties();
o=g.getMarginTop();
m=g.getMarginRight();
r=g.getMarginBottom();
k=g.getMarginLeft();
s=n.left!=null?n.left:n.edge;

if(qx.lang.Type.isString(s)){s=Math.round(parseFloat(s)*c/100);
}e=n.right!=null?n.right:n.edge;

if(qx.lang.Type.isString(e)){e=Math.round(parseFloat(e)*c/100);
}top=n.top!=null?n.top:n.edge;

if(qx.lang.Type.isString(top)){top=Math.round(parseFloat(top)*d/100);
}f=n.bottom!=null?n.bottom:n.edge;

if(qx.lang.Type.isString(f)){f=Math.round(parseFloat(f)*d/100);
}if(s!=null&&e!=null){j=c-s-e-k-m;
if(j<p.minWidth){j=p.minWidth;
}else if(j>p.maxWidth){j=p.maxWidth;
}s+=k;
}else{j=n.width;

if(j==null){j=p.width;
}else{j=Math.round(parseFloat(j)*c/100);
if(j<p.minWidth){j=p.minWidth;
}else if(j>p.maxWidth){j=p.maxWidth;
}}
if(e!=null){s=c-j-e-m-k;
}else if(s==null){s=k;
}else{s+=k;
}}if(top!=null&&f!=null){h=d-top-f-o-r;
if(h<p.minHeight){h=p.minHeight;
}else if(h>p.maxHeight){h=p.maxHeight;
}top+=o;
}else{h=n.height;

if(h==null){h=p.height;
}else{h=Math.round(parseFloat(h)*d/100);
if(h<p.minHeight){h=p.minHeight;
}else if(h>p.maxHeight){h=p.maxHeight;
}}
if(f!=null){top=d-h-f-r-o;
}else if(top==null){top=o;
}else{top+=o;
}}g.renderLayout(s,top,j,h);
}},_computeSizeHint:function(){var I=0,H=0;
var F=0,D=0;
var B,A;
var z,x;
var t=this._getLayoutChildren();
var w,G,v;
var J,top,u,y;

for(var i=0,l=t.length;i<l;i++){w=t[i];
G=w.getLayoutProperties();
v=w.getSizeHint();
var E=w.getMarginLeft()+w.getMarginRight();
var C=w.getMarginTop()+w.getMarginBottom();
B=v.width+E;
A=v.minWidth+E;
J=G.left!=null?G.left:G.edge;

if(J&&typeof J===b){B+=J;
A+=J;
}u=G.right!=null?G.right:G.edge;

if(u&&typeof u===b){B+=u;
A+=u;
}I=Math.max(I,B);
H=Math.max(H,A);
z=v.height+C;
x=v.minHeight+C;
top=G.top!=null?G.top:G.edge;

if(top&&typeof top===b){z+=top;
x+=top;
}y=G.bottom!=null?G.bottom:G.edge;

if(y&&typeof y===b){z+=y;
x+=y;
}F=Math.max(F,z);
D=Math.max(D,x);
}return {width:I,minWidth:H,height:F,minHeight:D};
}}});
})();
(function(){var a="qx.html.Root";
qx.Class.define(a,{extend:qx.html.Element,construct:function(b){qx.html.Element.call(this);

if(b!=null){this.useElement(b);
}},members:{useElement:function(c){qx.html.Element.prototype.useElement.call(this,c);
this.setRoot(true);
qx.html.Element._modified[this.$$hash]=this;
}}});
})();
(function(){var k="cursor",j="100%",i="repeat",h="mousedown",g="url(",f=")",d="mouseout",c="div",b="dblclick",a="mousewheel",w="qx.html.Blocker",v="mousemove",u="mouseover",t="appear",s="click",r="mshtml",q="engine.name",p="mouseup",o="contextmenu",n="disappear",l="qx/static/blank.gif",m="absolute";
qx.Class.define(w,{extend:qx.html.Element,construct:function(x,y){var x=x?qx.theme.manager.Color.getInstance().resolve(x):null;
var z={position:m,width:j,height:j,opacity:y||0,backgroundColor:x};
if((qx.core.Environment.get(q)==r)){z.backgroundImage=g+qx.util.ResourceManager.getInstance().toUri(l)+f;
z.backgroundRepeat=i;
}qx.html.Element.call(this,c,z);
this.addListener(h,this._stopPropagation,this);
this.addListener(p,this._stopPropagation,this);
this.addListener(s,this._stopPropagation,this);
this.addListener(b,this._stopPropagation,this);
this.addListener(v,this._stopPropagation,this);
this.addListener(u,this._stopPropagation,this);
this.addListener(d,this._stopPropagation,this);
this.addListener(a,this._stopPropagation,this);
this.addListener(o,this._stopPropagation,this);
this.addListener(t,this.__kD,this);
this.addListener(n,this.__kD,this);
},members:{_stopPropagation:function(e){e.stopPropagation();
},__kD:function(){var A=this.getStyle(k);
this.setStyle(k,null,true);
this.setStyle(k,A,true);
}}});
})();
(function(){var g='</xmp>',f='<xmp>',e="100%",d="html",c="",b="track.Application";
function a(h){var i=c;

if(window.document.body.outerHTML!=undefined){i=f+window.document.body.outerHTML+g;
}else if(document.getElementsByTagName(d)[0].innerHTML!=undefined){i=f+document.getElementsByTagName(d)[0].innerHTML+g;
}else if(window.document.documentElement.outerHTML!=undefined){i=f+window.document.documentElement.outerHTML+g;
}else{alert('Your browser does not support this functionality');
}h.info(i);
}qx.Class.define(b,{extend:qx.application.Standalone,members:{main:function(){qx.application.Standalone.prototype.main.call(this);
{var j=false;
this.info("qx.debug="+j);
};
net.watchee.util.log=this;
this.trackGui=new track.TrackGui(this);
this.getRoot().add(this.trackGui,{left:0,top:0,width:e,height:e});
this.trackGui.postCreationEvent();
},close:function(){qx.application.Standalone.prototype.close.call(this);
if(this.trackGui!=null){this.trackGui.shutdown();
this.trackGui=null;
}},terminate:function(){qx.application.Standalone.prototype.terminate.call(this);
if(this.trackGui!=null){this.trackGui.shutdown();
this.trackGui=null;
}}}});
})();
(function(){var gG="AjaxAnimator",gF="errorMsgBox",gE="",gD="-",gC="<key oid='device.",gB=":loginName",gA="unSubscribe",gz='</div>',gy="device.",gx="subscribe",iE=".cfg",iD="xpath://key[starts-with(@oid,'device.')]",iC="infoMsgBox",iB="loginName",iA='<div class="roundedLogoContainer" style="margin:0px; margin-bottom: 0px; padding:0px; padding-bottom:0px; border-style: none;">',iz="xsmsSenderName",iy="sendDeviceSettings",ix="/",iw="loginPre",iv="DEVICE_RESPONSE",gN="Possible causes are:<br />",gO="<li>Your internet aceess was interrupted</li>",gL="${",gM="<qos>",gJ="</ol>",gK="<multiSubscribe>false</multiSubscribe>",gH="<li>The ESC key was hit</li>",gI="welcomeBox",gP="<history numEntries='0' newestFirst='false'/>",gQ="<updateOneway>false</updateOneway>",dU="</qos>",dT="<b>Lost server connection</b><p />",dW="<local>false</local>",dV="<ol>",dY="click",dX=",",eb="Please try again later",ea="Logout",dS="resource.maintenance",dR="doAction",cq="Info Label",cr=":",cs="<key oid='",ct="/iframelb/index.html",cu=":key",cv="sendRemoveAccount",cw="_action",cx="removeBuddy",cy="myMapFrame",cz="Timeout",jr="sendGetAccountProperty",jq="id",jp="INPUT1_ON",jo="sendGetPoiInputConfig",jv="public",ju=".alarm'/>",jt=".status'/>",js='</a>',jx="mapCenterLat",jw="autoLogin",hU="resultCsvFlag",hV="<initialUpdate>false</initialUpdate>",hS="sound/",hT="RUND UM",hY="showMenuBar",ia='<div class="header" style="padding-top:12px;">',hW="removeFriendOf",hX=".cfg'/>",hQ="Get settings",hR=":trackName",fs=".nmea'/>",fr="Get geofences",fu=".xsms'/>",ft="connect",fo="status",fn=".ogg",fq="application/watchee.service.track.tracklist/gpx",fp="sendQueryReport",fm="xSMS-error",fl="http://",ik="'/>",il="header",im="showSortableDeviceTable",io="sendChangeLocations",ig=".mp3",ih="GPSvision",ii='<a href="http://gpsvision.de" style="text-decoration: none;" target="gpsvision.de">',ij="mapCenterLng",iq="subscribeXSms",ir="skipper.regatta.rundum.teilnehmer",fC="user.geofence.usedByRule",fB="rundum",fA="Received %1 friendOf",fz='_cmdLoadProfile',fy="Processing onAjaxUpdate failure:<br /><br />MsgUnit.toXml(): <pre>",fx="Ssleep",fw="mapLineClicked",fv="browser.name",fE="msgUnit",fD="FALLBACK",df="<br /> ",dg="Login is denied please check your your password.",dh="commandResponse",di="this.preferenceWindow: ",dj="_history",dk="Your sender nick-name",dl="Geofence enter",dm="exhausted, login denied.",dn=":oldPassword",dp="showInfoWindow=true",gd="promptMsgBox.title",gc="Waking up from power save mode",gb="Please enter your login name",ga="https://",gh="Received %1 buddies",gg="ENTER_SLEEPMODE",gf="subscribeAlarm failed: ",ge='<span class="header">',gl="trackGui",gk=":type",iV="Ignoring received command list for device %1",iW="images/anim/watcheeAjax_32.gif",iT="sendGetAccountInfo",iU='<img src="images/logoGPSvision.png" width="280" border="0" alt="GPSvision.de"/>',iR="sendGetPermissionTemplates failed: ",iS="type",iP="user.security.authentication.accessDenied.unknownLoginName",iQ="INVALID",ja="INPUT3_OFF",jb="sendRemoveRule",bO="SCHEDULED_EVENT",bN="Tracker is sending locations with SMS",bQ="setFriendOf",bP="Your request '%1' failed",bS="loginDone",bR="ALIVE",bU="GPSSIGNAL_LOST",bT="toolbar",bM="tree1",bL='_cmdSampleInOwnWindow',eu="Input sensor 3 on",ew="Adding buddy '%1' failed, please check the login name",ey="showEmbeddedHtmlFrameBottom",ez="</font></b> ",eq="GPRS_OK",er="16/actions/go-previous.png",es="sendGetDeviceCommandList",et="this.buddiesWidget.clear(): ",eo="<b>Welcome to %1 Web Tracking</b>",ep="Ignoring unknown message '%1'",hn="DEVELOPER INFO: ",hm="<b>Good Bye From %1!</b><br /><br /><b>The account %2 is destroyed</b><br />Thanks for having used %1.",hl="ENTER_AWAKE",hk="sendDeviceSettingKeyValue",hj="Server Exception during login, please try again.",hi="confirmAlarm",hh="Ignoring received 'alarmChanged' of unknown device %1: %2",hg="GPRS_OPERATION",hf="_subjectId",he="main",q="POSITION_UNAVAILABLE",r="<br />qosData=",o="update",p='_cmdNextSample',u="sendRemoveLocations",v="\nAfter:\n",s="Server Exception: Login failed, please check your user name and password<br /><br /><b>%1</b>",t="Server Exception",w=":onDeviceOffline",x="_watcheeService",cF="External power supply lost",cE="</pre><p>Exception: ",cH="assert: TrackGui.getTracks() is called without loginName",cG="customCss",cB="tests",cA="Input sensor 1 off",cD="Ignoring unknown NMEA data '%1'",cC="runbutton",cJ="Ajax Animator",cI="/watchee/ajax",bo="url",bp="sendRemoveTrack",bq="You have no permission to configure %1",br="Button Label",bs="Change password",bt="INPUT2_ON",bu="<b><font color='red'>",bv="html.svg",bm='style="margin:0px; margin-bottom: 0px; padding:0px; padding-bottom:0px; border-style: none;">',bn="expression",dM="Geofence enter or leave",dL="expectingResponse",dK="or login with your private account login name</p>",dJ="sendGetAlarms",dQ="sendGetDeviceConfiguration",dP="set.",dO="Logged in as %1",dN="sendGetPoiInputConfig response:",dH=", XSMS-Alias: ",dG="user.illegalArgument",dB="vertical",dA="GEOFENCE_ENTER",dz=")",dy="<p>Get a %1 account: <a href='http://watchee.net/watchee/register.jsp' target='_blank'>Register</a></p>",dF="TrackGui.js",dE="Established a GPRS socket connection",dD=":password",dC="${localeCountry}",dx="Rule %1",dw="Get buddies",be="os.name",bf="INPUT4_ON",bg="AccountProperty",bh="setBuddies",bi="&gt;",bj="SOS button pressed",bk="SOS_BUTTON",bl="16/actions/go-next.png",bc='"',bd="logappender",jd="Loading data for %1",jc=".html",jf="External power supply available",je="sendTestEmail",jh="f2",jg="sendGetTrackLocations",jk='_cmdNamespacePollution',ji="showDebugDetailsGui",jm="tree",jl="f1",gv="logger",gw="Adding buddy %1",gt='<div class="header" style="padding-top:0px;">',gu=":filter/limit",gr="Sorry, can't call myself.",gs="Creation of map frame failed",gp="admin",gq="TRACKER_OFFLINE",gn="sendGetRules",go="useGeolocation",fa="Tracker connection lost",eY="Tracker is moved away from last fix",eX="logoutPre",eW=":newPassword",eV="hidden",eU="makePhoneCall",eT="GEOFENCE",eS="mapCenterOnLocationUpdate",fc="Activating OUT %1 because of alarm %2",fb="showEmbeddedHtmlFrameLeftBottom",ck="queryPoiContainerConfigFromDb response is empty!",cl="__states",cm="track.TrackGui",cn="Remove geofence %1",cg="Base rule, fallback if no rule applies",ch="Save settings",ci="showInputLeds",cj="EXTERNAL_CHARGED_ON",co="alarmChanged",cp="EXTERNAL_CHARGED_OFF",P="subscribeOnlineStatus failed: ",O='_cmdObjectSummary',R="this.requestResponseDispatcher.clear(): ",Q="engine.name",L="Login is denied please check your login name and your password.",K="Get device command list",N="Change permission",M="<br /> (",J="GEOFENCE_LEAVE",I="Input sensor 1 on",hC="${oemName}",hD='<span style="font-size:32px">&nbsp;&nbsp;<span style="color:blue">GPS</span><span style="color:black"> Tracking</span></span>',hA="Removing buddy %1",hB="ruleTypeEnum",hG="user.security.authentication.expired",hH="TIMEOUT",hE="user.security.authentication.inactive",hF="MOVED",hy="Input sensor 2 on",hz="&lt;",fS="Get friend of",fR="<p>For best usage use Firefox 3! <a href='http://www.mozilla.com/en-US/firefox/all-rc.html' target='_blank'>Download</a></p>",fQ="widgets",fP="value",fW="Changing account data for %1 failed",fV="Get alarm events",fU="Send command to device",fT='<a href="http://watchee.net/index.html" target="watchee"><img src="images/watchee.gif" border="0" align="middle"/></a>',fY="Buddies processed",fX="errorMsgBox rules",cU="${loginName}",cV="16/actions/go-down.png",cW="Rendering %1 buddies",cX="Authorization Exception, ",cY="Buddy '%1' is removed already, but '%2' still has marked us as a friend",da="access denied",db="os.version",dc="SETSETTING",dd="sendGetTracks",de="password",gT="phoneNumber",gU="<",gR="onAjaxUpdate: ",gS='_cmdProfile',gX="INPUT2_OFF",gY="${localeLanguage}",gV="(Not logged in)",gW="xpath://key[starts-with(@oid,'xsms.')]",ha="DIESE HARD- UND SOFTWARE WIRD FÜR DAS RENNEN VERWENDET",hb="dummySendInputConfig",g="Ignoring received command list of unknown device %1",f="OVERSPEED",j="Create report",h="zoomIn=true",b="embeddedHtmlFrameLogo.url",a="100%",d="<qos><multiSubscribe>false</multiSubscribe><local>false</local><initialUpdate>false</initialUpdate><updateOneway>false</updateOneway></qos>",c="Before:\n",n="visible",m="user.security.authentication.accessDenied.wrongPassword",bH="embeddedHtmlFrameBottom.caption",bI="Microsoft",bJ="Remove account",bK=" failed: ",bD="<p><b>For best usage use Firefox! <a href='http://www.mozilla.com/en-US/firefox/all-rc.html' target='_blank'>Download</a></b></p>",bE="sendChangePassword",bF='_cmdDisposeSample',bG="INPUT3_ON",bB="<p>Please login as user <i>public</i> with password <i>public</i><br />",bC="Get %1-device configuration",el="</p>",ek="maxGpsDataPerTrackCurrent",ej="Scheduled task",ei="BATTERY_LOW",eh="_sampleToTreeNodeMap",eg="sendGetGeofences",ef="TEST HACK",ee="16/actions/go-up.png",ed="PERMISSION_DENIED",ec="sendRawDeviceCommand",fL="incrementalResponse",fM="Login",fJ="promptMsgBox.label",fK="embeddedHtmlFrameLeftBottom.url",fH="<qos><multiSubscribe>false</multiSubscribe><local>false</local><updateOneway>false</updateOneway><history numEntries='20' newestFirst='false'/></qos>",fI="Remove rule %1",fF="sendTestSMS",fG="loginAccountToGot",fN="Netscape",fO="Lost GPS signal",iI="Battery is almost empty",iH="maxGpsDataPerTrack",iK="<p>You are auto-logged-in as user <i>public</i> with password <i>public</i></p>",iJ="1",iM="rememberUrlParameters",iL='<div class="roundedLogoContainer" ',iO="user.connect.multiple",iN="Lade Teilnehmerliste ...",iG="Input sensor 4 on",iF='<span style="font-size:32px">&nbsp;&nbsp;<span style="color:red">GPS</span><span style="color:black">vision.de</span></span>',y="<br />topic=",z="subscribeStatus failed: ",A='<div class="header" style="padding-top:11px;padding-left:12px;">',B="Login is not possible, the account is expired.",C="Resetting OUT %1 because of alarm %2",D="text/raw",E="Processing returnQosOrException failure",F=":email",G="audioName",H="Get permissions",cN="menuBar.checkShowingButtons failed: ",cM=":lastName",cL="Login failed, please check your user name and password<br /><br /><b>%1</b>",cK="commandResponse 1=code 2=msg",cR="onAjaxUpdate",cQ="Timeout, no response after ",cP="<i>for example 'Freddy', more than 3 characters, you can't change it during this session!</i>",cO="track.theme.Theme",cT=' frameborder="0" marginHeight="0px" marginWidth="0px" scrolling="no" width="233" height="70"></iframe>',cS="images/Oxygen/",eE='</span>',eF="isDeviceResponse",eC="Successfully changed account data for %1",eD="engine.version",eI="logout failed",eJ="key",eG="this.getWindowManager.clear(): ",eH="Server Exception, %1 failed",eA="Login is not possible, the account is not active any more.",eB="<qos><multiSubscribe>false</multiSubscribe><local>false</local><initialUpdate>true</initialUpdate><updateOneway>false</updateOneway><history numEntries='20' newestFirst='false'/></qos>",hv="receivedServiceResponse.",hu="load",hx="The geofence can't be removed, please remove the referencing rule(s) first",hw=":phoneNumber",hr="...",hq="SMS_OPERATION",ht="Geofence %1",hs="Login is denied please check your login name.",hp="device.name",ho="embeddedHtmlFrameBottom.url",fi="Geofence leave",fh="Login to server failed",fk="Login failed, your maximum allowed login sessions are exhausted, please log out properly in future and wait some minutes to try again",fj="Error: %1 %2",fe="user.security.authorization.notAuthorized",fd="Input sensor 2 off",fg="ServiceListTO is parsed num=",ff="Lost the GPRS socket connection",hd="Tracker is sending locations with GPRS",hc="7076M",ie="GPRS_LOST",bb="Received buddy ",ib='_cmdPrevSample',ic="sendChangeAccountProperty",it="getAlarms failed: ",iu="requestInfo.exception.message",ip="errorMsg",is="showExpiryWarning failed: ",em="showHeaderBar",en='<iframe class="roundedLogoContainer" id="embeddedHtmlFrameLogo" src="',cd="this.embeddedFramelb.setVisibility(): ",cc=":alias",cb="browser.version",ca='_cmdShowLastProfile',bY="<initialUpdate>true</initialUpdate>",bX="horizontal",bW="Error: Timeout",bV=" ",cf="VoutputNumber",ce=" sec",eO="Input sensor 3 off",eP="Get track names for %1",eQ="sendGetPoiInputConfig:",eR="Unknown rule type",eK="showControlFrame",eL="Change account",eM="testDevice",eN="Calling %1 failed!<br /><br />Please configure a phone number for this device.",iX="InputConfig/",iY="user.security.authentication.accessDenied",hJ='Watchee Web Tracking',hI="sendAddRule",hL="Successfully changed password for %1",hK=": ",hN="1.6",hM="images/",hP="INPUT4_OFF",hO='Watchee Beta',gj="subscribeXSms failed: ",gi="left",du="Changing password failed for %1:<br />%2",dv='_cmdRunSample',ds="Rendering buddy %1/%2",dt="Phone call request to %1 (%2) is sent to your device %3<br /><br />Please check your phone.",dq="sendChangeAccount",dr=">",bz="Got valid GPS signal",bA="userProfile",bw="Tracker is outside allowed speed",by="Enter power save mode",V=":firstName",U=".nmea",T="Ignoring received properties of unknown device %1",S="mainsplit",ba="GPSSIGNAL_OK",Y=":info",X="Input sensor 4 off",W="Please enter a nick name to identify yourself<br />";
var jn=5;
var gm=500;
var bx=true;
log=new qx.core.Object();
xbGetQxIcon=function(jy){return cS+jy;
};
xbGetIcon=function(jz){return hM+jz;
};
xbGetSound=function(name){var jA=org.xmlBlaster.util.isFF?fn:ig;
return hS+name+jA;
};
xbGetLocSound=function(name){var jC=org.xmlBlaster.util.isFF?fn:ig;
var jB=qx.locale.Manager.getInstance().getLocale();
return hS+jB+ix+name+jC;
};
var dI=null;
qx.Class.define(cm,{extend:qx.ui.container.Composite,construct:function(jD){qx.ui.container.Composite.call(this);
var jK=new qx.ui.layout.Canvas();
this.setLayout(jK);
dI=this;
this.geolocationLatitude=null;
this.geolocationLongitude=null;
this.queryGeolocation();
this.connectReturnQos=null;
this.blockingCounter=0;
this.myApplication=jD;
this.msgBox=new track.msgbox.MsgBox(this);
this.watchee=null;
this.multipleLoginCounter=0;
this.mapInfoGui=null;
this.mapPoiInfoGui=null;
var jU=true;

if(jU){var jR=qx.core.Environment.get(fv);
var jP=qx.core.Environment.get(cb);
var ka=qx.core.Environment.get(Q);
var jN=qx.core.Environment.get(eD);
var jE=qx.core.Environment.get(hp);
var jJ=qx.core.Environment.get(bv);
var jW=qx.core.Environment.get(be);
var jT=qx.core.Environment.get(db);
var jG=hc;
var jM=hN;
var jF=cO;
this.info("Environment: "+jR+" "+jP+" "+ka+" "+jN+" svg="+jJ+" on "+jE+" "+jW+" "+jT+" qxVersion="+jM+" qxRevision="+jG);
this.info("Environment: mobile.emulatetouch="+qx.core.Environment.get("qx.mobile.emulatetouch")+" mobile.nativescroll="+qx.core.Environment.get("qx.mobile.nativescroll")+" propertyDebugLevel="+qx.core.Environment.get("qx.propertyDebugLevel")+" theme="+"track.theme.Theme");
}this.info("TimeZone minutes="+org.xmlBlaster.util.getTimezoneOffsetMinutes()+" locale="+org.xmlBlaster.util.getLocaleIdJava()+" localeQt="+qx.locale.Manager.getInstance().getLocale());
this.menuBar=null;
this.lazyLoadTriggered=false;
this.lazyLoadFinished=false;
this.eventManager=org.xmlBlaster.util.EventManager.getInstance();
this.requestResponseDispatcher=new org.xmlBlaster.util.RequestResponseDispatcher();
this.set({allowGrowX:true,allowGrowY:true});
this.groupIdInfo=null;
this.windowManager=new track.util.WindowManager(this);
this.ajaxAnimator=new track.util.AjaxAnimator(this);
this.poiConfigManager=null;
this.processingLoginStageLOGGEDOUT=0;
this.processingLoginStageAUTHENTICATED=1;
this.processingLoginStageWAITING_ACCOUNTTO=2;
this.processingLoginStageGOT_ACCOUNTTO=3;
this.processingLoginStageGOT_BUDDYTO=4;
this.processingLoginStageLOGGEDIN=9;
this.processingLoginStage=this.processingLoginStageLOGGEDOUT;
this.processingLogout=false;
this.sessionProfile=new track.util.SessionProfile(this);
this.sessionProfile.activate();
this.initTranslations();
var jO=xbProperties.getBoolean(iM,true);

if(jO){var jQ=xbProperties.getUrlProperties();
var jI=jQ.getKeys();

for(var i=0,l=jI.length;i<l;i++){var jS=jI[i];

if(jS==de||jS==iB){continue;
}var jX=jQ.get(jS);
xbProperties.setDefaultProp(jS,jX);
}}this.__kE=xbProperties.getBoolean(ci,false);
if(xbProperties.getBoolean(ji,false)==true){var jH=new track.test.TestForm(this);
jH.showForm();
}if(xbProperties.getBoolean(eM,false)==true){this.allowTestDevice=true;
}this.headerBarHeight=68;
this.headerBar=new qx.ui.container.Composite(new qx.ui.layout.Canvas()).set({height:this.headerBarHeight});
this.headerLogo=this.__kG();
this.headerBar.add(this.headerLogo,{left:0,top:0,right:0,bottom:0});

if(xbProperties.getBoolean(hY,false)){this.menuBar=new track.mainview.MenuBar(this);
this.headerBar.add(this.menuBar.makeMenuBar(),{left:240,top:0,bottom:0,right:340});
}else this.menuBar=null;
this.loginForm=new track.mainview.LoginForm(this);
this.headerBar.add(this.loginForm.makeLoginForm(),{top:8,right:5});
this.add(this.headerBar,{left:0,top:0,right:0});
this.mainSplitpane=new qx.ui.splitpane.Pane(bX);
this.mainSplitpane.set({allowGrowX:true,allowGrowY:true});
this.mainSplitpane.setDecorator(he);
this.add(this.mainSplitpane,{left:0,top:0,bottom:0});
this.mainSplitpane.setMarginTop(this.headerBarHeight);
this.controlFrame=new qx.ui.splitpane.Pane(dB);
this.controlFrameWidth=342;
this.controlFrame.setMinWidth(this.controlFrameWidth);
this.controlFrame.setDecorator(null);
this.mainSplitpane.add(this.controlFrame,1);
if(xbProperties.getBoolean(im,false)){this.buddiesWidget=new track.devicestable.DevicesTable(this);
this.controlFrame.add(this.buddiesWidget.create(),5);
}else{this.buddiesWidget=new track.BuddiesWidget(this);
var jL=new qx.ui.container.Scroll();
jL.add(this.buddiesWidget);
this.controlFrame.add(jL,5);
}this.mapFrameAtom=new qx.ui.basic.Atom();
this.mapFrameAtom.getContainerElement().setAttribute(jq,cy);
this.iconUp=xbGetQxIcon(ee);
this.iconDown=xbGetQxIcon(cV);
this.iconRight=xbGetQxIcon(bl);
this.iconLeft=xbGetQxIcon(er);
this.headerToggle=new qx.ui.basic.Atom(null,this.iconUp);
this.headerToggle.addListener(dY,function(e){if(this.headerToggle.getIcon()==this.iconUp){this.headerBarHide();
}else{this.headerBarShow();
}},this);
this.add(this.headerToggle,{right:0});
this.headerToggle.setMarginTop(this.headerBarHeight);

if(!xbProperties.getBoolean(em,true)){this.headerBarHide();
}this.paneToggle=new qx.ui.basic.Atom(null,this.iconLeft);
this.paneToggle.addListener(dY,function(e){if(this.paneToggle.getIcon()==this.iconLeft){this.controlFrameHide();
}else{this.controlFrameShow();
}},this);
this.add(this.paneToggle,{bottom:0});
this.paneToggle.setMarginLeft(this.controlFrameWidth);

if(!xbProperties.getBoolean(eK,true)){this.controlFrameHide();
}this.mainSplitpane.add(this.mapFrameAtom,5);
this.add(this.mainSplitpane,{width:a});
this.getWindowsSize();
this.showBannerBottom();
this.xsmsPhoto=null;
this.embeddedFramelb=null;

if(xbProperties.getBoolean(fb,false)){this.embeddedFramelb=new qx.ui.embed.ThemedIframe();
this.controlFrame.add(this.embeddedFramelb,1);
this.embeddedFramelb.addListener(hu,function(e){this.debug("Loaded: "+this.getSource());
});
var jY=xbProperties.getStr(fK,ct);
jY=this.prepareUrlForLocale(jY);
this.embeddedFramelb.setSource(jY);
this.embeddedFramelb.setEnabled(false);
}else{this.xsmsPhoto=new track.xsmsphoto.XsmsPhoto(this);
this.xsmsPhoto.setEnabled(false);
}var jV=xbProperties.getStr(cG,gE);

if(jV.length>0){org.xmlBlaster.util.loadcssfile(jV);
}this.__kF(xbProperties.getBoolean(jw,false));
this.historyPreloader=null;
this.info("TrackGui.js done");
},members:{headerBarHide:function(){this.headerBar.exclude();
this.mainSplitpane.setMarginTop(0);
this.headerToggle.setMarginTop(0);
this.headerToggle.setIcon(this.iconDown);

if(this.loginNameLabel!=null){this.loginNameLabel.setVisibility(eV);
}},headerBarShow:function(){this.headerBar.show();
this.mainSplitpane.setMarginTop(this.headerBarHeight);
this.headerToggle.setMarginTop(this.headerBarHeight);
this.headerToggle.setIcon(this.iconUp);

if(this.loginNameLabel!=null){this.loginNameLabel.setVisibility(n);
}},controlFrameHide:function(){this.controlFrame.exclude();
this.paneToggle.setMarginLeft(0);
this.paneToggle.setIcon(this.iconRight);
},controlFrameShow:function(){this.controlFrame.show();
this.paneToggle.setMarginLeft(this.controlFrameWidth);
this.paneToggle.setIcon(this.iconLeft);
},getLogger:function(){return this;
},getPoiConfigManager:function(){return this.poiConfigManager;
},showInputLeds:function(){return this.__kE;
},getDevicesTableController:function(){if(!xbProperties.getBoolean(im,false)){return null;
}
if(this.buddiesWidget!=null){var kb=this.buddiesWidget.devicesTableController;
return kb;
}return null;
},queryGeolocation:function(){if(xbProperties.getBoolean(go,true)&&navigator.geolocation){var kc={enableHighAccuracy:true,timeout:10000,maximumAge:0};
navigator.geolocation.getCurrentPosition(this.onGeolocationFound,this.onGeolocationError,kc);
}else{this.info("Your browser doesn't support geolocation services");
}},onGeolocationFound:function(kd){dI.geolocationLatitude=kd.coords.latitude;
dI.geolocationLongitude=kd.coords.longitude;

if(xbProperties.getStr(jx,null)==null)xbProperties.setDefaultProp(jx,dI.geolocationLatitude);

if(xbProperties.getStr(ij,null)==null)xbProperties.setDefaultProp(ij,dI.geolocationLongitude);
dI.info("TrackGui.js: Geolocation is latitude: "+dI.geolocationLatitude+", longitude:"+dI.geolocationLongitude);
},onGeolocationError:function(ke){var kf=ke.message||gE;
var kg=ke.code==ke.TIMEOUT?hH:(ke.code==ke.POSITION_UNAVAILABLE?q:ed);
dI.warn("TrackGui.js geolocation error: "+kg+" "+kf);
},getWindowsSize:function(){this.winW=630;
this.winH=460;

if(parseInt(navigator.appVersion)>3){if(navigator.appName==fN){this.winW=window.innerWidth;
this.winH=window.innerHeight;
}
if(navigator.appName.indexOf(bI)!=-1){this.winW=document.body.offsetWidth;
this.winH=document.body.offsetHeight;
}}},showBannerBottom:function(){this.winBannerBottom=null;

if(xbProperties.getBoolean(ey,false)){this.winBannerBottom=new qx.ui.window.Window(xbProperties.getStr(bH,ha));
var ki=new qx.ui.layout.Basic();
this.winBannerBottom.setLayout(ki);
this.winBannerBottom.setContentPadding(0);
this.winBannerBottom.setShowStatusbar(false);
this.winBannerBottom.setAllowClose(false);
this.winBannerBottom.setAllowMaximize(false);
this.winBannerBottom.setAllowMinimize(false);
this.winBannerBottom.setMovable(false);
this.winBannerBottom.setResizable(false);
this.winBannerBottom.moveTo(this.controlFrameWidth+4,this.winH-107-5-35);
this.winBannerBottom.setWidth(611+1);
this.winBannerBottom.setHeight(107+20);
this.embeddedFrameBottom=new qx.ui.embed.ThemedIframe();
this.embeddedFrameBottom.setWidth(611);
this.embeddedFrameBottom.setHeight(107+60);
var kh=xbProperties.getStr(ho,ct);
this.embeddedFrameBottom.setSource(kh);
this.winBannerBottom.add(this.embeddedFrameBottom,{left:0,top:0,bottom:0,padding:0,margin:0,spacing:0});
this.winBannerBottom.open();
}},veryBadHackToTriggerPNGLoadForAlarmTable:function(kj){if(this.menuBar==null)return;
var kk=new qx.ui.basic.Atom(ef,kj);
this.menuBar.menuBarContainer.add(kk,{row:0,column:this.menuBar.maxColHack});
this.menuBar.menuBarContainer.remove(kk);
return kj;
},getMyRoot:function(){return this.getApplicationRoot();
},getMyLoginName:function(){if(this.watchee==null)return null;
return this.watchee.getLoginName();
},getMySessionName:function(){if(this.connectReturnQos==null||this.connectReturnQos.getSessionQos()==null)return null;
return this.connectReturnQos.getSessionQos().getSessionName();
},getMyLocaleId:function(){var kn=this.getMyAccountTO();
var km=kn.getLanguage();
return km;
},getMyLanguageId:function(){var kp=this.getMyAccountTO();
var ko=kp.getLanguageId();
return ko;
},getGroupIdInfo:function(){return this.groupIdInfo;
},hasGroupIdInfo:function(){return this.groupIdInfo!=null&&this.groupIdInfo.countGroupSubIds()>0;
},getMyCountryId:function(){var kr=this.getMyAccountTO();
var kq=kr.getCountryId();
return kq;
},getMyAbsoluteSessionNameStr:function(){var ks=this.getMySessionName();

if(ks==null)return null;
return ks.getAbsoluteName();
},getMyPassword:function(){if(this.loginForm==null)return null;
return this.loginForm.getPasswordTextFieldValue();
},getMyAccountTO:function(){if(this.watchee==null)return null;
return this.watchee.getAccountTO();
},getMyOemName:function(){var ku=this.getMyAccountTO();

if(ku==null)return ih;
var kt=ku.getOemName();

if(kt==null||kt==gE)return ih;
return kt;
},getMyOemProperty:function(kv,kw){var kv=kv||null;

if(kw===undefined){kw=null;
}var ky=this.getMyAccountTO();

if(ky==null||kv==null){return kw;
}var kx=ky.getOemPropertyStr(kv,kw);
return kx;
},prepareUrlForLocale:function(kz){if(kz.indexOf(gL)==-1){return kz;
}var kE=this.getMyAccountTO();
var kB=this.getMyOemName();
var kD=(kE!=null)?this.getMyLanguageId():track.util.GuiUtils.getCurrBrowserLanguageId();
var kC=(kE!=null)?this.getMyCountryId():org.xmlBlaster.util.getLocaleIdCountry();
var kA=this.getMyLoginName();
kz=org.xmlBlaster.util.replaceAllTokens(kz,gY,kD);
kz=org.xmlBlaster.util.replaceAllTokens(kz,dC,kC);
kz=org.xmlBlaster.util.replaceAllTokens(kz,hC,kB);
kz=org.xmlBlaster.util.replaceAllTokens(kz,cU,kA);

if(kz.indexOf(gL)!=-1){}return kz;
},getMyOemLink:function(kF,kG,kH){var kF=kF||null;
var kG=(kG===undefined)?null:kG;
var kH=kH||null;

if(kF==null){return kG;
}var kI=kG;
kI=this.getMyOemProperty(kF,kI);
kI=xbProperties.getStrFrom(bo,kF,kI);

if(kI==null){return kG;
}
if(kI.toLowerCase().indexOf(fl)==-1&&kI.toLowerCase().indexOf(ga)==-1){kI=fl+kI;
}
if(kI.indexOf(gL)!=-1){kI=this.prepareUrlForLocale(kI);
return kI;
}
if(kH!=null){if(kI.length>0&&kI.charAt(kI.length-1)!=ix){kI+=ix;
}kI+=languageId+ix+kH+jc;
}return kI;
},getSessionProfile:function(){return this.sessionProfile;
},getEventManager:function(){return this.eventManager;
},getEventManagerFromBuddyManager:function(){return this.watchee.getBuddyManager().getEventManager();
},getWindowManager:function(){return this.windowManager;
},getRequestResponseDispatcher:function(){return this.requestResponseDispatcher;
},initTranslations:function(){net.watchee.RuleTypeEnum.GEOFENCE.description=this.trc(eT,dM);
net.watchee.RuleTypeEnum.GEOFENCE_LEAVE.description=this.trc(J,fi);
net.watchee.RuleTypeEnum.GEOFENCE_ENTER.description=this.trc(dA,dl);
net.watchee.RuleTypeEnum.SOS_BUTTON.description=this.trc(bk,bj);
net.watchee.RuleTypeEnum.EXTERNAL_CHARGED_ON.description=this.trc(cj,jf);
net.watchee.RuleTypeEnum.EXTERNAL_CHARGED_OFF.description=this.trc(cp,cF);
net.watchee.RuleTypeEnum.TRACKER_OFFLINE.description=this.trc(gq,fa);
net.watchee.RuleTypeEnum.BATTERY_LOW.description=this.trc(ei,iI);
net.watchee.RuleTypeEnum.OVERSPEED.description=this.trc(f,bw);
net.watchee.RuleTypeEnum.MOVED.description=this.trc(hF,eY);
net.watchee.RuleTypeEnum.GPSSIGNAL_LOST.description=this.trc(bU,fO);
net.watchee.RuleTypeEnum.GPSSIGNAL_OK.description=this.trc(ba,bz);
net.watchee.RuleTypeEnum.GPRS_LOST.description=this.trc(ie,ff);
net.watchee.RuleTypeEnum.GPRS_OK.description=this.trc(eq,dE);
net.watchee.RuleTypeEnum.SMS_OPERATION.description=this.trc(hq,bN);
net.watchee.RuleTypeEnum.GPRS_OPERATION.description=this.trc(hg,hd);
net.watchee.RuleTypeEnum.SCHEDULED_EVENT.description=this.trc(bO,ej);
net.watchee.RuleTypeEnum.ENTER_SLEEPMODE.description=this.trc(gg,by);
net.watchee.RuleTypeEnum.ENTER_AWAKE.description=this.trc(hl,gc);
net.watchee.RuleTypeEnum.INPUT1_ON.description=this.trc(jp,I);
net.watchee.RuleTypeEnum.INPUT1_OFF.description=this.trc(jp,cA);
net.watchee.RuleTypeEnum.INPUT2_ON.description=this.trc(bt,hy);
net.watchee.RuleTypeEnum.INPUT2_OFF.description=this.trc(gX,fd);
net.watchee.RuleTypeEnum.INPUT3_ON.description=this.trc(bG,eu);
net.watchee.RuleTypeEnum.INPUT3_OFF.description=this.trc(ja,eO);
net.watchee.RuleTypeEnum.INPUT4_ON.description=this.trc(bf,iG);
net.watchee.RuleTypeEnum.INPUT4_OFF.description=this.trc(hP,X);
net.watchee.RuleTypeEnum.FALLBACK.description=this.trc(fD,cg);
net.watchee.RuleTypeEnum.INVALID.description=this.trc(iQ,eR);
},getBounceNextVal:function(kJ){if(org.xmlBlaster.util.isFilled(kJ)){return kJ+cr+this.requestResponseDispatcher.getRequestIdNextVal();
}return this.requestResponseDispatcher.getRequestIdNextVal();
},extractLoginNameFromBounceId:function(kK,kL){var kK=kK||null;
var kL=kL||null;

if(kK==null)return kL;
var kM=kK.indexOf(cr);

if(kM>0)return kK.substring(0,kM);
return kL;
},postCreationEvent:function(){var kN=this;

if(this.blockingCounter>2000){this.errorMsgBox(this.trc(gF,gs));
return;
}if(!org.xmlBlaster.util.isDefined(this.mapFrame)){this.blockingCounter++;
setTimeout(function(){kN.postCreationEvent();
},10);
kN.makeEmbeddedMapFrame();
return;
}if(xbProperties.getBoolean(jw,false)==true){kN.loginForm.clickedLoginButton();
}},__kF:function(kO){try{if(xbProperties.getBoolean(gI,false)==true){var kP=this.trc(gI,eo,this.getMyOemName());

if(xbProperties.getStr(iB,jv)==jv){if(kO){kP+=iK;
}else{kP+=bB+dK;
}
if(isWatchee){kP+=this.trc(gI,dy,this.getMyOemName());
}}
if(org.xmlBlaster.util.isIE6){kP+=bD;
}else{kP+=fR;
}this.infoMsgBox(kP);
}}catch(e){this.info("wellcomeBox caught exception: "+e);
}},__kG:function(){var kR=gE;
if(isGpsVision){var kU=false;

if(kU){kR=iA+ia+ii+iF+js+gz+gz;
}else{kR=iA+A+ii+iU+js+gz+gz;
}}else if(isGpsOem){var kQ=xbProperties.getStr(b,null);

if(kQ==null){kR=iA+ia+hD+gz+gz;
}else{kQ=this.prepareUrlForLocale(kQ);
kR=iA+gt+en+kQ+bc+cT+gz+gz;
}}else{var kT=hJ;

if(xbProperties.getBoolean(hY,false))kT=hO;
kR=iL+bm+ge+fT+kT+eE+gz;
}var kS=new qx.ui.embed.Html(kR);
kS.getContainerElement().setAttribute(jq,il);
return kS;
},createPreferenceWindow:function(){if(!org.xmlBlaster.util.isDefined(this.preferenceWindow)){this.preferenceWindow=new track.pref.PreferenceWindow(this);
this.preferenceWindow.createPreferenceWindow();
}else{this.preferenceWindow.open();
this.preferenceWindow.focus();
}},startAjaxAnimator:function(kV,kW){this.ajaxAnimator.startAjaxAnimator(kV,kW);
},changeLabelAjaxAnimator:function(kX){this.ajaxAnimator.changeLabelAjaxAnimator(kX);
},stopAjaxAnimator:function(kY){this.ajaxAnimator.stopAjaxAnimator(kY);
},clearXsmsPane:function(){if(this.xsmsPhoto!=null){this.xsmsPhoto.xsmsTab.clearXsmsPane();
}},getMsgBox:function(){return this.msgBox;
},askMsgBox:function(la,lb,lc,ld,le,lf,lg){return this.msgBox.askMsgBox(la,lb,lc,ld,le,lf,lg);
},errorMsgBox:function(lh,li){return this.msgBox.errorMsgBox(lh,li);
},errorMsgBoxDeveloper:function(lj,lk){var lj=lj||null;
var lk=lk||null;

if(isDevelopEnvironment){return this.msgBox.errorMsgBox(hn+lj,lk);
}else{this.error(lj+": "+lk);
return null;
}},ajaxMsgBox:function(ll,lm,ln){return this.msgBox.infoMsgBox(ll,lm,ln,iW);
},infoMsgBox:function(lo,lp,lq){return this.msgBox.infoMsgBox(lo,lp,lq);
},promptMsgBox:function(lr,ls,lt,lu,lv,lw,lx,ly){return this.msgBox.promptMsgBox(lr,ls,lt,lu,lv,lw,lx,ly);
},getGeofences:function(lz){if(this.watchee==null)return;
this.getLogger().info("getGeofences ...");
this.startAjaxAnimator(this.trc(gG,fr));
this.watchee.getRuleManager().sendGetGeofences(lz,this.returnQosOrException,this,eg);
},sendAddGeofence:function(lA){if(this.watchee==null)return;
this.getLogger().info("sendAddGeofence ...");
this.startAjaxAnimator(this.trc(gG,ht,lA.getName()));
this.watchee.getRuleManager().sendAddGeofence(lA.getPropertyCollection());
this.stopAjaxAnimator();
},sendRemoveGeofence:function(lB){if(this.watchee==null)return;
this.getLogger().info("sendRemoveGeofence ...");
this.startAjaxAnimator(this.trc(gG,cn,lB.getName()));
this.watchee.getRuleManager().sendRemoveGeofence(lB.getPropertyCollection());
this.stopAjaxAnimator();
},getRules:function(lC){if(this.watchee==null)return;
this.getLogger().info("getRules ...");
this.startAjaxAnimator(this.trc(gG,fr));
this.watchee.getRuleManager().sendGetRules(lC,this.returnQosOrException,this,gn);
},sendAddRule:function(lD,lE,lF,lG){if(this.watchee==null)return;
this.getLogger().info("sendAddRule ...");
this.startAjaxAnimator(this.trc(gG,dx,lD.getRuleName()));
var lH=this.watchee.getRuleManager().sendAddRule(lD.getPropertyCollections(),lE,lF,lG);
this.watchee.publishServiceMessage(lH,this.returnQosOrException,this,hI);
this.stopAjaxAnimator();
},sendRemoveRule:function(lI,lJ,lK,lL){if(this.watchee==null)return;
this.getLogger().info("sendRemoveRule ...");
this.startAjaxAnimator(this.trc(gG,fI,lI.getRuleName()));
var lM=this.watchee.getRuleManager().sendRemoveRule(lI.getPropertyCollections(),lJ,lK,lL);
this.watchee.publishServiceMessage(lM,this.returnQosOrException,this,jb);
this.stopAjaxAnimator();
},getAlarms:function(lN,lO){if(this.watchee==null)return;
this.getLogger().info("getAlarms "+lN+" ...");
this.startAjaxAnimator(this.trc(gG,fV));
this.watchee.getRuleManager().sendGetAlarms(lN,this.returnQosOrException,this,dJ,lO);
},confirmAlarms:function(lP,lQ){if(this.watchee==null)return;
this.getLogger().info("confirmAlarm ...");
this.watchee.getRuleManager().sendConfirmAlarms(lP,lQ,this.returnQosOrException,this,hi);
},sendInputConfig:function(lR,lS,lT){var lU=iX+lS;
this.sendChangeAccountProperty(lR,lU,lT,function(){this.queryPoiContainerConfigFromDb(this.updateWindowManager,this,gl);
},this,hb);
},updateWindowManager:function(lV,lW){var lX=this.getWindowManager().poiReportWindow;
var lY=this.getWindowManager().poiConfigWindow;

if(lX!=null){lX.onContainerConfigUpdate(lV,lW);
}
if(lY!=null){lY.onContainerConfigUpdate(lV,lW);
}},sendGetAccountProperty:function(ma,mb,mc,md,me){if(this.watchee==null)return;

if(mc===undefined)mc=null;
this.getLogger().info("sendGetAccountProperty ...");
this.startAjaxAnimator(this.trc(gG,hQ));
var mi=org.xmlBlaster.util.PropTO;
var mg=new Array();
var mj=mi.VALUE_TASK_NAMED_GETACCOUNTPROPERTY+gD+this.getRequestResponseDispatcher().getRequestIdNextVal();
mg.push(new mi(mi.KEY_SERVICENAME,mi.VALUE_SERVICE_ACCOUNT));
mg.push(new mi(mi.KEY_TASK,mi.VALUE_TASK_NAMED_GETACCOUNTPROPERTY));
mg.push(new mi(mi.KEY_BOUNCE,mj));
mg.push(new mi(mi.KEY_DATA+gB,ma));
mg.push(new mi(mi.KEY_DATA+cu,mb));
var mf=new org.xmlBlaster.util.ServiceTO(mg);
var mh=new org.xmlBlaster.util.ServiceListTO(mf);

if(mc!=null){this.getRequestResponseDispatcher().registerRequest(mj,120,mc,md,me,false);
this.watchee.publishServiceMessage(mh,this.returnQosOrException,this,jr);
}else{this.watchee.publishServiceMessage(mh,this.returnQosOrException,this,jr);
}this.stopAjaxAnimator();
},sendQueryReport:function(mk,ml,mm,mn){if(this.watchee==null)return;

if(ml===undefined)ml=null;
this.getLogger().info("sendQueryReport ...");
this.startAjaxAnimator(this.trc(gG,j));
var mr=org.xmlBlaster.util.PropTO;
var mp=new Array();
var ms=mr.VALUE_TASK_NAMED_CREATEREPORT+gD+this.getRequestResponseDispatcher().getRequestIdNextVal();
mp.push(new mr(mr.KEY_SERVICENAME,mr.VALUE_SERVICE_REPORT));
mp.push(new mr(mr.KEY_TASK,mr.VALUE_TASK_NAMED_CREATEREPORT));
mp.push(new mr(mr.KEY_BOUNCE,ms));
mp.push(new mr(mr.KEY_MIME,mr.VALUE_RESULTMIME_PROPERTYCOLLECTION));
mp.push(new mr(mr.KEY_DATA,mk.toXml()));
var mo=new org.xmlBlaster.util.ServiceTO(mp);
var mq=new org.xmlBlaster.util.ServiceListTO(mo);

if(ml!=null){this.getRequestResponseDispatcher().registerRequest(ms,120,ml,mm,mn,false);
this.watchee.publishServiceMessage(mq,this.returnQosOrException,this,fp);
}else{this.watchee.publishServiceMessage(mq,this.returnQosOrException,this,fp);
}this.stopAjaxAnimator();
return ms;
},queryPoiContainerConfigFromDb:function(mt,mu,mv){var mt=mt||null;

if(mt==null){this.error("queryPoiContainerConfigFromDb with missing callback");
return;
}var mu=mu||null;
var mv=mv||null;
var mw=this.getMyLoginName();
var mx=org.xmlBlaster.util.PropTO;
this.sendGetPoiInputConfig(mw,function(my,mz,mA){var mH=gE;

if(my==null){mH=cQ+mA.timeoutSec+ce;
this.errorMsgBoxDeveloper(eQ+mH);
}else if(my.isException()){var mE=my.getPropValue(mx.KEY_ERRORCODE);
var mC=my.getPropValue(mx.KEY_RESULT);
mH+=bu+mE+ez;
mH+=df+mC;
mH+=M+originalCommand+dz;
this.infoMsgBox(dN+mH);
}else{mH=my.getPropValue(mx.KEY_RESULT);

if(mH!=null&&mH.length>0){var mF=net.watchee.PropertyCollections.parseXml(mH);
var mG=mF.getPropertyCollections();
this.poiConfigManager=new net.watchee.PoiConfigManager();

for(var i=0,l=mG.length;i<l;i++){var mD=mG[i];
var mB=net.watchee.PoiConfig.parsePropertyCollection(mD);
this.poiConfigManager.addPoiConfig(mB);
}mt.call(mu,this.poiConfigManager,mz);
}else{this.infoMsgBox(ck);
}}},this,mv);
},sendGetPoiInputConfig:function(mI,mJ,mK,mL){if(this.watchee==null)return;

if(mJ===undefined)mJ=null;
this.getLogger().info("sendGetPoiInputConfig ...");
this.startAjaxAnimator(this.trc(gG,hQ));
var mP=org.xmlBlaster.util.PropTO;
var mN=new Array();
var mQ=mP.VALUE_TASK_NAMED_GET_POI_INPUTCONFIG+gD+this.getRequestResponseDispatcher().getRequestIdNextVal();
mN.push(new mP(mP.KEY_SERVICENAME,mP.VALUE_SERVICE_ACCOUNT));
mN.push(new mP(mP.KEY_TASK,mP.VALUE_TASK_NAMED_GET_POI_INPUTCONFIG));
mN.push(new mP(mP.KEY_BOUNCE,mQ));
mN.push(new mP(mP.KEY_DATA+gB,mI));
var mM=new org.xmlBlaster.util.ServiceTO(mN);
var mO=new org.xmlBlaster.util.ServiceListTO(mM);

if(mJ!=null){this.getRequestResponseDispatcher().registerRequest(mQ,120,mJ,mK,mL,false);
this.watchee.publishServiceMessage(mO,this.returnQosOrException,this,jo);
}else{this.watchee.publishServiceMessage(mO,this.returnQosOrException,this,jo);
}this.stopAjaxAnimator();
},onAccountProperties:function(mR,mS){if(this.watchee==null)return;
var mT=this.watchee.getBuddyManager().getFriendOfOrMyself(mR);

if(mT==null||!mT.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_CFG)){this.error("onAccountProperty: You have no permission to configure %1",mR);
return;
}var mU=true;
mT.mergeAccountProperties(mS,mU);
},sendChangeAccountProperty:function(mV,mW,mX,mY,na,nb){if(this.watchee==null)return;

if(mY===undefined)mY=null;
this.getLogger().info("sendChangeAccountProperty ...");
this.startAjaxAnimator(this.trc(gG,ch));
var nf=org.xmlBlaster.util.PropTO;
var nd=new Array();
var ng=nf.VALUE_TASK_NAMED_CHANGEACCOUNTPROPERTY+gD+this.getRequestResponseDispatcher().getRequestIdNextVal();
nd.push(new nf(nf.KEY_SERVICENAME,nf.VALUE_SERVICE_ACCOUNT));
nd.push(new nf(nf.KEY_TASK,nf.VALUE_TASK_NAMED_CHANGEACCOUNTPROPERTY));
nd.push(new nf(nf.KEY_BOUNCE,ng));
nd.push(new nf(nf.KEY_DATA+gB,mV));
nd.push(new nf(nf.KEY_DATA+cu,mW));
nd.push(new nf(nf.KEY_DATA,mX));
var nc=new org.xmlBlaster.util.ServiceTO(nd);
var ne=new org.xmlBlaster.util.ServiceListTO(nc);
this.getRequestResponseDispatcher().registerRequest(ng,120,function(nh,ni,nj){if(nh!=null&&!nh.isException()){var nk=new net.watchee.PropertyCollection(bg,o);
nk.addKeyValue(mW,mX);
this.onAccountProperties(mV,nk);
}
if(mY!=null){mY.call(na,nh,ni,nj);
}},this,nb,false);
this.watchee.publishServiceMessage(ne,this.returnQosOrException,this,ic);
this.stopAjaxAnimator();
},getTracks:function(nl){if(this.watchee==null)return;

if(!org.xmlBlaster.util.isDefined(nl)){this.errorMsgBox(this.trc(gF,cH));
return;
}this.getLogger().info("getTracks ...");
this.startAjaxAnimator(this.trc(gG,eP,nl));
this.sendGetTracks(nl);
},sendGetTracks:function(nm){var np=org.xmlBlaster.util.PropTO;
var no=new Array();
no.push(new np(np.KEY_SERVICENAME,np.VALUE_SERVICE_TRACK));
no.push(new np(np.KEY_TASKTYPE,np.VALUE_TASKTYPE_NAMED));
no.push(new np(np.KEY_TASK,np.VALUE_TASK_NAMED_GETTRACKS));
no.push(new np(np.KEY_DATA+gB,nm));
no.push(new np(np.KEY_BOUNCE,nm));
no.push(new np(np.KEY_RESULTMIME,fq));
var nn=new org.xmlBlaster.util.ServiceTO(no);
var nq=new org.xmlBlaster.util.ServiceListTO(nn);

if(this.watchee!=null)this.watchee.publishServiceMessage(nq,this.returnQosOrException,this,dd);
},getTrackLocations:function(nr,ns,nt){if(this.watchee==null)return;
this.getLogger().info("getTrackLocations loginName="+nr+" trackName="+ns+" ...");
this.startAjaxAnimator(this.trc(gG,jd,ns));
this.sendGetTrackLocations(nr,ns,nt);
},sendGetTrackLocations:function(nu,nv,nw){var nw=nw||null;
var nz=this.watchee.getDevice(nu).getTrack(nv).isCurrentTrack();
var nC=org.xmlBlaster.util.PropTO;
var ny=new Array();
ny.push(new nC(nC.KEY_SERVICENAME,nC.VALUE_SERVICE_TRACK));
ny.push(new nC(nC.KEY_TASKTYPE,nC.VALUE_TASKTYPE_NAMED));
ny.push(new nC(nC.KEY_TASK,nC.VALUE_TASK_NAMED_GETTRACK));
ny.push(new nC(nC.KEY_DATA+gB,nu));
ny.push(new nC(nC.KEY_DATA+hR,nv));
var nB=nz?xbProperties.getInt(ek,1000):xbProperties.getInt(iH,1000);
ny.push(new nC(nC.KEY_DATA+gu,nB));
ny.push(new nC(nC.KEY_BOUNCE,nu));

if(nw!=null)ny.push(new nC(nC.KEY_BOUNCE+Y,nw));
ny.push(new nC(nC.KEY_RESULTMIME,fq));
var nx=new org.xmlBlaster.util.ServiceTO(ny);
var nA=new org.xmlBlaster.util.ServiceListTO(nx);

if(this.watchee!=null)this.watchee.publishServiceMessage(nA,this.returnQosOrException,this,jg);
},sendRemoveLocations:function(nD,nE){var nI=org.xmlBlaster.util.PropTO;
var nG=new Array();
nG.push(new nI(nI.KEY_SERVICENAME,nI.VALUE_SERVICE_TRACK));
nG.push(new nI(nI.KEY_TASKTYPE,nI.VALUE_TASKTYPE_NAMED));
nG.push(new nI(nI.KEY_TASK,nI.VALUE_TASK_NAMED_REMOVELOCATIONS));
var nF=nD.join(dX);
nG.push(new nI(nI.KEY_DATA,nF));
nG.push(new nI(nI.KEY_BOUNCE,nE));
var nJ=new org.xmlBlaster.util.ServiceTO(nG);
var nH=new org.xmlBlaster.util.ServiceListTO(nJ);

if(this.watchee!=null)this.watchee.publishServiceMessage(nH,this.returnQosOrException,this,u);
},sendChangeLocationAddr:function(nK){if(this.watchee==null)return;
var nK=nK||[];
var nN=new net.watchee.PropertyCollections();

for(var nM=0;nM<nK.length;nM++){var nR=nK[nM];
var nV=true;
var nO=new net.watchee.PropertyCollection();
nO.add(new net.watchee.PropertyPair(net.watchee.GPSData.KEY_UNIQUEID,nR.getUniqueId()));
var nU=null;
var nL=null;
var nQ=null;
var nS=net.watchee.GPSData.KEY_ADDRESS;
var nP=nR.getAddressStr(dX,nV,null);
var nT=new net.watchee.PropertyPair(nS,nP,true,nU,nL,nQ);
nO.add(nT);
nN.add(nO);
nR.addressStrFromDb=true;
}
if(nN.size()>0){var nW=null;
this.sendChangeLocations(nN,nW,true);
}},sendChangeLocations:function(nX,nY,oa){var oa=org.xmlBlaster.util.toBoolean(oa,false);
var of=org.xmlBlaster.util.PropTO;
var od=new Array();
od.push(new of(of.KEY_SERVICENAME,of.VALUE_SERVICE_TRACK));
od.push(new of(of.KEY_TASKTYPE,of.VALUE_TASKTYPE_NAMED));
od.push(new of(of.KEY_TASK,of.VALUE_TASK_NAMED_CHANGELOCATIONS));
var ob=nX.toXml();
od.push(new of(of.KEY_DATA,ob));
od.push(new of(of.KEY_BOUNCE,nY));
var oc=new org.xmlBlaster.util.ServiceTO(od);
var oe=new org.xmlBlaster.util.ServiceListTO(oc);

if(this.watchee!=null){if(oa){this.watchee.publishServiceMessage(oe,null,this,io);
}else{this.watchee.publishServiceMessage(oe,this.returnQosOrException,this,io);
}}},sendChangePassword:function(og,oh,oi){var ol=org.xmlBlaster.util.PropTO;
var ok=new Array();
ok.push(new ol(ol.KEY_SERVICENAME,ol.VALUE_SERVICE_ACCOUNT));
ok.push(new ol(ol.KEY_TASKTYPE,ol.VALUE_TASKTYPE_NAMED));
ok.push(new ol(ol.KEY_TASK,ol.VALUE_TASK_NAMED_CHANGEPASSWORD));
ok.push(new ol(ol.KEY_DATA+gB,og));
ok.push(new ol(ol.KEY_DATA+dn,oh));
ok.push(new ol(ol.KEY_DATA+eW,oi));
ok.push(new ol(ol.KEY_BOUNCE,oi));
ok.push(new ol(ol.KEY_RESULTENCODING,ol.ENCODING_PLAIN));
var oj=new org.xmlBlaster.util.ServiceTO(ok);
var om=new org.xmlBlaster.util.ServiceListTO(oj);

if(this.watchee!=null){this.startAjaxAnimator(this.trc(gG,bs));
this.watchee.publishServiceMessage(om,this.returnQosOrException,this,bE);
}},sendChangeAccount:function(on){var or=org.xmlBlaster.util.PropTO;
var op=new Array();
var oo=on.getLoginName();
op.push(new or(or.KEY_SERVICENAME,or.VALUE_SERVICE_ACCOUNT));
op.push(new or(or.KEY_TASKTYPE,or.VALUE_TASKTYPE_NAMED));
op.push(new or(or.KEY_TASK,or.VALUE_TASK_NAMED_CHANGEACCOUNT));
op.push(new or(or.KEY_DATA+gB,oo));
op.push(new or(or.KEY_DATA+cc,on.getAlias()));
op.push(new or(or.KEY_DATA+V,on.getFirstName()));
op.push(new or(or.KEY_DATA+cM,on.getLastName()));
op.push(new or(or.KEY_DATA+F,on.getEmail()));
op.push(new or(or.KEY_DATA+hw,on.getPhoneNumber()));
op.push(new or(or.KEY_BOUNCE,oo));
op.push(new or(or.KEY_RESULTENCODING,or.ENCODING_PLAIN));
var os=new org.xmlBlaster.util.ServiceTO(op);
var oq=new org.xmlBlaster.util.ServiceListTO(os);

if(this.watchee!=null){this.startAjaxAnimator(this.trc(gG,eL));
this.watchee.publishServiceMessage(oq,this.returnQosOrException,this,dq);
}},sendRemoveAccount:function(ot,ou,ov,ow,ox){if(ov===undefined)ov=null;
var oC=org.xmlBlaster.util.PropTO;
var oE=oC.VALUE_TASK_NAMED_REMOVEACCOUNT+gD+this.getRequestResponseDispatcher().getRequestIdNextVal();
var oz=new Array();
oz.push(new oC(oC.KEY_SERVICENAME,oC.VALUE_SERVICE_ACCOUNT));
oz.push(new oC(oC.KEY_TASKTYPE,oC.VALUE_TASKTYPE_NAMED));
oz.push(new oC(oC.KEY_TASK,oC.VALUE_TASK_NAMED_REMOVEACCOUNT));
oz.push(new oC(oC.KEY_DATA+gB,ot));
oz.push(new oC(oC.KEY_DATA+dD,ou));
oz.push(new oC(oC.KEY_BOUNCE,oE));
oz.push(new oC(oC.KEY_RESULTENCODING,oC.ENCODING_PLAIN));
var oy=new org.xmlBlaster.util.ServiceTO(oz);
var oB=new org.xmlBlaster.util.ServiceListTO(oy);

if(this.watchee!=null){var oD=300000;
this.startAjaxAnimator(this.trc(gG,bJ),oD);

if(ov!=null){var oA=oD/1000;
this.getRequestResponseDispatcher().registerRequest(oE,oA,ov,ow,ox,false);
this.watchee.publishServiceMessage(oB,this.returnQosOrException,this,cv);
}else{this.watchee.publishServiceMessage(oB,this.returnQosOrException,this,cv);
}}},sendRawDeviceCommand:function(oF,oG,oH,oI,oJ){var oJ=org.xmlBlaster.util.toBoolean(oJ,false);
var oI=oI||null;

if(this.watchee==null||!org.xmlBlaster.util.isFilled(oH))throw new Error("sendRawDeviceCommand with watchee or command is null");
var oF=org.xmlBlaster.util.isFilled(oF)?oF:this.watchee.getLoginName();
var oG=org.xmlBlaster.util.isFilled(oG)?oG:(oF+gD+this.getRequestResponseDispatcher().getRequestIdNextVal());
var oP=org.xmlBlaster.util.PropTO;
var oL=new Array();
oL.push(new oP(oP.KEY_TASKTYPE,oP.VALUE_TASKTYPE_NAMED));
oL.push(new oP(oP.KEY_TASK,net.watchee.Device.SERVICE_KEY_SETSETTING));
oL.push(new oP(oP.KEY_MIME,D));
oL.push(new oP(oP.KEY_DATA,oH));

if(oI!=null)oL.push(new oP(oP.KEY_DATA+w,oI));
oL.push(new oP(oP.KEY_BOUNCE,oG));
oL.push(new oP(oP.KEY_RESULTENCODING,oP.ENCODING_PLAIN));
var oO=new org.xmlBlaster.util.ServiceTO(oL);
var oQ=new org.xmlBlaster.util.ServiceListTO(oO);

if(this.watchee!=null){this.startAjaxAnimator(this.trc(gG,fU));
var oK=gy+oF+iE;
this.getLogger().info("Send message to "+oK+": "+oH);

if(oJ){var oM=true;
var oN=null;
this.getRequestResponseDispatcher().registerRequest(oG,120,function(oR,oS,oT){this._receivedBlackboxResponse(oF,oR,oS,oT,false);
},this,oN,oM);
}this.watchee.xbAccess.publishServiceMessage(oK,oQ,this.returnQosOrException,this,ec);
}},sendGetDeviceCommandList:function(oU){if(this.watchee==null)throw new Error("sendGetDeviceCommandList with watchee is null");
var oU=org.xmlBlaster.util.isFilled(oU)?oU:this.watchee.getLoginName();
var pa=this.watchee.getBuddyManager().getFriendOfOrMyself(oU);

if(pa==null||!pa.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_CFG)){this.infoMsgBox(this.trc(iC,bq,oU));
return;
}var pb=org.xmlBlaster.util.PropTO;
var oW=new Array();
oW.push(new pb(pb.KEY_TASKTYPE,pb.VALUE_TASKTYPE_NAMED));
oW.push(new pb(pb.KEY_TASK,net.watchee.Device.VALUE_TASK_NAMED_GETCOMMANDLIST));
oW.push(new pb(pb.KEY_DATA,gE));
oW.push(new pb(pb.KEY_BOUNCE,oU));
var oY=new org.xmlBlaster.util.ServiceTO(oW);
var oX=new org.xmlBlaster.util.ServiceListTO(oY);

if(this.watchee!=null){this.startAjaxAnimator(this.trc(gG,K));
var oV=gy+oU+iE;
this.getLogger().info("sendGetDeviceCommandList("+oV+")");
this.watchee.xbAccess.publishServiceMessage(oV,oX,this.returnQosOrException,this,es);
}},makePhoneCallToDevice:function(pd){var pe=pd.getHwPhoneNumber();

if(pe==gE){this.errorMsgBox(this.trc(gF,eN,pd.getDeviceId()));
return;
}var pf=this.getMyLoginName();

if(pf==pd.getDeviceId()){this.errorMsgBox(this.trc(gF,gr,pd.getDeviceId()));
return;
}this.makePhoneCall(pf,pe);
this.infoMsgBox(this.trc(iC,dt,pd.getDeviceId(),pe,pf),20000);
},makePhoneCall:function(pg,ph){if(this.watchee==null)return false;

if(ph==undefined||ph==null||ph==gE)return false;
var pi=new net.watchee.PropertyCollection();
pi.add(new net.watchee.PropertyPair(iS,eU));
pi.add(new net.watchee.PropertyPair(cw,iJ));
pi.add(new net.watchee.PropertyPair(gT,ph));
this.sendActionToDevice(pg,pi,false);
return true;
},sendDeviceSettingKeyValue:function(pj,pk,pl,pm){var pm=org.xmlBlaster.util.toBoolean(pm,true);
var px=org.xmlBlaster.util.PropTO;
var pq=new Array();
var pz=pj+gD+this.getRequestResponseDispatcher().getRequestIdNextVal();
pq.push(new px(px.KEY_TASKTYPE,px.VALUE_TASKTYPE_NAMED));
pq.push(new px(px.KEY_TASK,net.watchee.Device.SERVICE_KEY_SETSETTING));
pq.push(new px(px.KEY_BOUNCE,pz));
pq.push(new px(px.KEY_RESULTENCODING,px.ENCODING_PLAIN));
pq.push(new px(dL,pm));
var pt=new net.watchee.PropertyCollection();
var py=dc;
var pv=new net.watchee.PropertyPair(net.watchee.PC_ACTION,py);
pt.add(pv);
var pn=new net.watchee.PropertyPair(eJ,pk);
pt.add(pn);
var pp=new net.watchee.PropertyPair(fP,pl);
pt.add(pp);
pq.push(new px(px.KEY_DATA,pt.toXml()));
var pw=new org.xmlBlaster.util.ServiceTO(pq);
var pu=new org.xmlBlaster.util.ServiceListTO(pw);

if(this.watchee!=null){var po=gy+pj+iE;
this.getLogger().info("Send message to "+po+": "+pt.toXml());

if(pm){var pr=true;
var ps=null;
this.getRequestResponseDispatcher().registerRequest(pz,120,function(pA,pB,pC){this._receivedBlackboxResponse(pj,pA,pB,pC,false);
},this,ps,pr);
}this.watchee.xbAccess.publishServiceMessage(po,pu,this.returnQosOrException,this,hk);
}},sendDeviceSettings:function(pD,pE,pF,pG,pH,pI){var pG=pG||null;
var pF=org.xmlBlaster.util.toBoolean(pF,true);
var pO=org.xmlBlaster.util.PropTO;
var pL=new Array();
var pP=pD+gD+this.getRequestResponseDispatcher().getRequestIdNextVal();
pL.push(new pO(pO.KEY_TASKTYPE,pO.VALUE_TASKTYPE_NAMED));
pL.push(new pO(pO.KEY_TASK,net.watchee.Device.SERVICE_KEY_SETSETTING));
pL.push(new pO(pO.KEY_DATA,pE.toXml()));
pL.push(new pO(pO.KEY_BOUNCE,pP));
pL.push(new pO(pO.KEY_RESULTENCODING,pO.ENCODING_PLAIN));
var pK=new org.xmlBlaster.util.ServiceTO(pL);
var pN=new org.xmlBlaster.util.ServiceListTO(pK);

if(this.watchee!=null){var pJ=gy+pD+iE;
this.getLogger().info("Send message to "+pJ+": "+pE.toXml());

if(pF){var pM=true;
var pI=null;
this.getRequestResponseDispatcher().registerRequest(pP,120,function(pQ,pR,pS){this._receivedBlackboxResponse(pD,pQ,pR,pS,false);

if(pG!=null){pG.call(pH,pQ,pR,pS);
}},this,pI,pM);
}this.watchee.xbAccess.publishServiceMessage(pJ,pN,this.returnQosOrException,this,iy);
}},sendGetDeviceConfiguration:function(pT){var pY=this.watchee.getBuddyManager().getFriendOfOrMyself(pT);

if(pY==null){this.warn("sendGetDeviceConfiguration: Buddy not known "+pT);
return;
}
if(!pY.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_CFG)){this.warn("sendGetDeviceConfiguration: You have not permission to get configuration of "+pT);
return;
}var qa=org.xmlBlaster.util.PropTO;
var pW=new Array();
var qb=pT+gD+this.getRequestResponseDispatcher().getRequestIdNextVal();
pW.push(new qa(qa.KEY_TASKTYPE,qa.VALUE_TASKTYPE_NAMED));
pW.push(new qa(qa.KEY_TASK,net.watchee.Device.SERVICE_KEY_GETSETTINGS));
pW.push(new qa(qa.KEY_BOUNCE,qb));
pW.push(new qa(qa.KEY_RESULTENCODING,qa.ENCODING_PLAIN));
var pV=new org.xmlBlaster.util.ServiceTO(pW);
var pX=new org.xmlBlaster.util.ServiceListTO(pV);

if(this.watchee!=null){this.startAjaxAnimator(this.trc(gG,bC,pT));
this.subscribeCfg(pT);
var pU=gy+pT+iE;
this.getLogger().info("Send 'getSettings' message to "+pU);
this.watchee.xbAccess.publishServiceMessage(pU,pX,this.returnQosOrException,this,dQ);
}},sendActionToDeviceCSV:function(qc,qd,qe,qf,qg){var qg=qg||gE;
var qf=org.xmlBlaster.util.toBoolean(qf,false);
var qn=org.xmlBlaster.util.PropTO;
var qk=new Array();
var qo=qc+gD+this.getRequestResponseDispatcher().getRequestIdNextVal();

if(qg.length>0){qo+=dX+qg;
}var ql=dR;
qk.push(new qn(qn.KEY_TASKTYPE,qn.VALUE_TASKTYPE_NAMED));
qk.push(new qn(qn.KEY_TASK,ql));
qk.push(new qn(qn.KEY_DATA,qd));
qk.push(new qn(qn.KEY_BOUNCE,qo));
qk.push(new qn(qn.KEY_RESULTENCODING,qn.ENCODING_PLAIN));
qk.push(new qn(qn.KEY_MIME,qn.VALUE_RESULTMIME_CSV));
qk.push(new qn(qn.KEY_DATA+gk,qe));
var qj=new org.xmlBlaster.util.ServiceTO(qk);
var qm=new org.xmlBlaster.util.ServiceListTO(qj);

if(this.watchee!=null){var qi=gy+qc+iE;
this.getLogger().info("Send message to "+qi+": "+qd);

if(qf){var qh=this.watchee.xbAccess.publishServiceMessageSync(qi,qm,this.returnQosOrException,this,iy);
return qh;
}else{this.watchee.xbAccess.publishServiceMessage(qi,qm,this.returnQosOrException,this,iy);
return null;
}}},sendActionToDevice:function(qp,qq,qr){var qr=org.xmlBlaster.util.toBoolean(qr,true);
var qA=org.xmlBlaster.util.PropTO;
var qu=new Array();
var qB=qp+gD+this.getRequestResponseDispatcher().getRequestIdNextVal();
var qy=dR;
qu.push(new qA(qA.KEY_TASKTYPE,qA.VALUE_TASKTYPE_NAMED));
qu.push(new qA(qA.KEY_TASK,qy));
qu.push(new qA(qA.KEY_DATA,qq.toXml()));
qu.push(new qA(qA.KEY_BOUNCE,qB));
qu.push(new qA(qA.KEY_RESULTENCODING,qA.ENCODING_PLAIN));
var qt=new org.xmlBlaster.util.ServiceTO(qu);
var qz=new org.xmlBlaster.util.ServiceListTO(qt);

if(this.watchee!=null){var qs=gy+qp+iE;
this.getLogger().info("Send message to "+qs+": "+qq.toXml());

if(qr){var qv=true;
var qw=null;
this.getRequestResponseDispatcher().registerRequest(qB,120,function(qC,qD,qE){this._receivedBlackboxResponse(qp,qC,qD,qE,true);
},this,qw,qv);
}this.watchee.xbAccess.publishServiceMessage(qs,qz,this.returnQosOrException,this,iy);
}},receivedBlackboxResponse:function(qF,qG,qH,qI,qJ){this._receivedBlackboxResponse(qF,qG,qH,qI,qJ);
},_receivedBlackboxResponse:function(qK,qL,qM,qN,qO){var qT=org.xmlBlaster.util.PropTO;
var qP=gE;
var qR=null;
var qS=null;

if(qL==null){qP=this.trc(dh,bW);
this.getLogger().info("Setting action timed out");
qS=(qN.timedout!=undefined)?this.trc(fm,cz):gE;

if(qN.exception!=undefined&&qN.exception!=null&&qN.exception.errorCode!=undefined)qS=qN.exception.errorCode;
}else if(qL.isException()){qP=this.trc(cK,fj,qL.getErrorCode(),qL.getErrorMessage());
qR=qL.getPropValue(qT.KEY_RESULT_CSVFLAG);
this.getLogger().info("Got tracker exception: "+qL.getErrorCode());
qS=(qN.timedout!=undefined)?this.trc(fm,cz):gE;

if(qN.exception!=undefined&&qN.exception!=null&&qN.exception.errorCode!=undefined)qS=qN.exception.errorCode;
}else{qP=qL.getPropValue(qT.KEY_RESULT);
qR=qL.getPropValue(qT.KEY_RESULT_CSVFLAG);
this.getLogger().info("Got tracker response: "+qP+" resultCsvFlag="+qR);
}var qQ=iv;

if(this.xsmsPhoto!=null&&this.xsmsPhoto.statusTab!=null){this.xsmsPhoto.statusTab.receivedStatus(qQ,qK,qP,qS,qR);
}},sendRemoveTrack:function(qU,qV){var qY=org.xmlBlaster.util.PropTO;
var qX=new Array();
qX.push(new qY(qY.KEY_SERVICENAME,qY.VALUE_SERVICE_TRACK));
qX.push(new qY(qY.KEY_TASKTYPE,qY.VALUE_TASKTYPE_NAMED));
qX.push(new qY(qY.KEY_TASK,qY.VALUE_TASK_NAMED_REMOVETRACK));
qX.push(new qY(qY.KEY_DATA+gB,qU));
qX.push(new qY(qY.KEY_DATA+hR,qV));
var qW=new org.xmlBlaster.util.ServiceTO(qX);
var ra=new org.xmlBlaster.util.ServiceListTO(qW);

if(this.watchee!=null)this.watchee.publishServiceMessage(ra,this.returnQosOrException,this,bp);
},getBuddyManager:function(){if(this.watchee==null){return null;
}return this.watchee.getBuddyManager();
},getBuddies:function(){if(this.watchee==null)return;
this.getLogger().info("send getBuddies ...");
this.startAjaxAnimator(this.trc(gG,dw));
this.watchee.getBuddyManager().getEventManager().addListener(bh,function(rb){var rc=rb.getData();
this.receivedBuddyList(rc);
},this);
this.watchee.getBuddyManager().sendGetBuddies();
},getFriendOf:function(){if(this.watchee==null)return;
this.getLogger().info("send getFriendOf ...");
this.startAjaxAnimator(this.trc(gG,fS));
this.watchee.getBuddyManager().getEventManager().addListener(bQ,function(rd){var re=rd.getData();
this.receivedFriendOfList(re);
},this);
this.watchee.getBuddyManager().sendGetFriendOf();
},sendGetAccountInfo:function(rf){if(this.watchee==null)return;
this.getLogger().info("sendGetAccountInfo ...");
var ri=org.xmlBlaster.util.PropTO;
var rh=new Array();
rh.push(new ri(ri.KEY_SERVICENAME,ri.VALUE_SERVICE_ACCOUNT));
rh.push(new ri(ri.KEY_TASK,ri.VALUE_TASK_NAMED_GETACCOUNT));
rh.push(new ri(ri.KEY_DATA+gB,rf));
rh.push(new ri(ri.KEY_RESULTENCODING,ri.ENCODING_PLAIN));
var rg=new org.xmlBlaster.util.ServiceTO(rh);
var rj=new org.xmlBlaster.util.ServiceListTO(rg);
this.watchee.publishServiceMessage(rj,this.returnQosOrException,this,iT);
},sendGetPermissionTemplates:function(){this.getLogger().info("sendGetPermissionTemplates ...");

if(this.watchee!=null){this.startAjaxAnimator(this.trc(gG,H));
this.watchee.getBuddyManager().sendGetPermissionTemplates();
}},sendChangePermission:function(rk){this.getLogger().info("sendChangePermission ...");

if(this.watchee!=null){this.startAjaxAnimator(this.trc(gG,N));
this.watchee.getBuddyManager().addBuddy(rk);
this.watchee.getBuddyManager().sendAddBuddy(rk);
this.stopAjaxAnimator();
}},sendAddBuddy:function(rl){this.getLogger().info("sendAddBuddy ...");

if(this.watchee!=null){this.startAjaxAnimator(this.trc(gG,gw,rl.getLoginName()));
this.watchee.getBuddyManager().addBuddy(rl);
this.watchee.getBuddyManager().sendAddBuddy(rl);
this.stopAjaxAnimator();
}},sendRemoveBuddy:function(rm,rn){this.getLogger().info("sendRemoveBuddy ...");

if(this.watchee!=null){this.startAjaxAnimator(this.trc(gG,hA,rm.getLoginName()));
this.watchee.getBuddyManager().sendRemoveBuddy(rm,rn);
this.stopAjaxAnimator();
}},disposeWatchee:function(ro){var rp=qx.dev.ObjectSummary.getInfo();
ro.dispose();
qx.event.Timer.once(function(){this.infoMsgBox(c+rp+v+qx.dev.ObjectSummary.getInfo());
},this,5000);
},addPhotoToPhotoGallery:function(rq,rr){if(this.xsmsPhoto!=null&&this.xsmsPhoto.photoTab!=null){return this.xsmsPhoto.photoTab.addPhotoToPhotoGallery(rq,rr);
}return null;
},removePhotoFromPhotoGallery:function(rs){if(this.xsmsPhoto!=null&&this.xsmsPhoto.photoTab!=null){return this.xsmsPhoto.photoTab.removePhotoFromPhotoGallery(rs);
}return null;
},clearPhotoGallery:function(){if(this.xsmsPhoto!=null&&this.xsmsPhoto.photoTab!=null){this.xsmsPhoto.photoTab.clearPhotoPage();
}},makeEmbeddedMapFrame:function(){if(org.xmlBlaster.util.isDefined(this.mapFrame))return this.mapFrame;
this.mapFrame=document.getElementById(cy);
return this.mapFrame;
},makeLoginLabel:function(rt){if(rt!=null)this.currentLoginLabelText=rt;

if(xbProperties.getStr(iz,null)!=null)rt=this.currentLoginLabelText+dH+xbProperties.getStr(iz,gE);

if(this.loginNameLabel==null){this.loginNameLabel=new qx.ui.basic.Label(rt);
this.loginNameLabel.setTextColor(watcheeOrange);
this.add(this.loginNameLabel,{left:60,top:53});

if(xbProperties.getBoolean(gp,false)){this.loginNameLabel.addListener(dY,function(e){var ru=xbProperties.getStr(iz,gE);
var rw=3;
var rv=false;
this.promptMsgBox(this.trc(gd,dk),this.trc(fJ,W+cP),ru,rw,rv,function(rx,ry){if(rx){xbProperties.setAccountProp(iz,ry);
this.makeLoginLabel(null);
}else{}},this);
},this);
}}else this.loginNameLabel.setValue(rt);
},fireAlarmChangedEvent:function(rz,rA,rB){var rz=rz||null;
var rA=rA||true;
var rB=rB||null;
if(rz==null)return;
var rC={alarmTO:rz,device:rB};
this.watchee.getEventManager().fireEvent(co,rC);
},getMapInfoGui:function(){if(this.mapInfoGui==null)this.mapInfoGui=new track.map.MapInfoGui(this);
return this.mapInfoGui;
},getMapPoiInfoGui:function(){if(this.mapPoiInfoGui==null)this.mapPoiInfoGui=new track.map.MapPoiInfoDrawer(this);
return this.mapPoiInfoGui;
},loginExecute:function(rD,rE){return this._loginExecuteStage1(rD,rE);
},_onLoginException:function(rF,rG,rH){this.stopAjaxAnimator();
var rI=(rH.constructor==org.xmlBlaster.util.XmlBlasterException&&rH.getErrorCodeStr()==iO);
this.logout(rI);
this.stopAjaxAnimator();
if(rI&&this.multipleLoginCounter<2){this.multipleLoginCounter++;
this.loginExecute(rF,rG);
return false;
}this.error("Login failed",rH);

if(rH.constructor==org.xmlBlaster.util.XmlBlasterException){if(rH.isTomcatServerSide()){rH.setErrorCodeStr(dS);
this.errorMsgBox(this.trc(gF,dT+gN+dV+gO+gH+gJ+eb),rH);
}else if(rH.getErrorCodeStr()==iY){this.errorMsgBox(this.trc(gF,L),rH);
}else if(rH.getErrorCodeStr()==iP){this.errorMsgBox(this.trc(gF,hs),rH);
}else if(rH.getErrorCodeStr()==m){this.errorMsgBox(this.trc(gF,dg),rH);
}else if(rH.getErrorCodeStr()==hE){this.errorMsgBox(this.trc(gF,eA),rH);
}else if(rH.getErrorCodeStr()==hG){this.errorMsgBox(this.trc(gF,B),rH);
}else{this.errorMsgBox(this.trc(gF,hj),rH);
}}else{this.errorMsgBox(this.trc(gF,fh),rH);
}return false;
},_loginExecuteStage1:function(rJ,rK){this.processingLogout=false;

if(rJ==null||rJ==gE){this.errorMsgBox(this.trc(ip,gb));
return false;
}var rN={loginName:rJ,processingLoginStage:this.processingLoginStage};
this.eventManager.fireEvent(iw,rN);
this.startAjaxAnimator(this.trc(gG,fM));
var rM=cI;
var rO=false;
this.watchee=new net.watchee.Watchee(rM,this.mapFrame,rJ,null,this.getRequestResponseDispatcher(),rO);
this.watchee.registerMapInfoGui(this.getMapInfoGui());
this.buddiesWidget.initialize(this.watchee);

if(this.xsmsPhoto!=null){this.xsmsPhoto.initializeTabView();
this.xsmsPhoto.setEnabled(false);
}
if(this.embeddedFramelb!=null){this.embeddedFramelb.setEnabled(false);
}this.watchee.getEventManager().addListener(fw,function(rP){var rV=rP.getData().deviceId;
var rR=rP.getData().trackName;
var rT=rP.getData().gpsData;
this.getLogger().info("mapLineClicked, processing now");
var rQ=rV;
var rU=this.watchee.getBuddyManager().getBuddyOrFriendOf(rQ);
var rS=this.getWindowManager().popupTrackConfigWindow(rU);
rS.makeTrackCurrent(rR);
},this);
try{this.loginForm.setSubmitLoginButtonLabel(hr);
this.connectReturnQos=this.watchee.connect(true,rJ,rK,null,ft);
this.processingLoginStage=this.processingLoginStageAUTHENTICATED;
this.loginForm.setSubmitLoginButtonLabel(this.trc(br,ea));
this.makeLoginLabel(this.trc(cq,dO,rJ));

if(!rO){this.watchee.mapManager.initializeMap();
}this.initTranslations();
this.processingLoginStage=this.processingLoginStageWAITING_ACCOUNTTO;
this.sendGetAccountInfo(rJ);
this.removeFriendOfListenerFunc=this.watchee.getBuddyManager().getEventManager().addListener(hW,function(rW){var rX=rW.getData();
this.onBuddyRemovedEvent(rX,hW);
},this);
this.removeBuddyListenerFunc=this.watchee.getBuddyManager().getEventManager().addListener(cx,function(rY){var sa=rY.getData();
this.onBuddyRemovedEvent(sa,cx);
},this);
}catch(sb){return this._onLoginException(rJ,rK,sb);
}var rL=this;
this.watchee.startAjaxPolling(function(sc){rL.onAjaxUpdate(sc);
});
},_loginExecuteStage2:function(){try{var se=this.getMyLoginName();
this.processingLoginStage=this.processingLoginStageGOT_ACCOUNTTO;
var sg={loginName:se,processingLoginStage:this.processingLoginStage};
this.eventManager.fireEvent(iw,sg);

try{if(this.menuBar!=null){this.menuBar.checkShowingButtons();
}}catch(sj){this.errorMsgBoxDeveloper(cN+sj);
}this.getBuddies();

if(this.xsmsPhoto!=null){this.xsmsPhoto.setEnabled(true);
}
if(this.embeddedFramelb!=null){this.embeddedFramelb.setEnabled(true);
}this.loginForm.isLoggedIn();
this.multipleLoginCounter=0;
var sg={loginName:se};
this.eventManager.fireEvent(fG,sg);
var si=xbProperties.getStr(bA,null);

if(fB==si){var sd=ir;
var sh=hT;
this.startAjaxAnimator(iN);
this.groupIdInfo=this.getSyncGroupIdList(sd,sh);
this.stopAjaxAnimator();
}this.historyPreloader=new track.util.HistoryPreloader(this);
this.historyPreloader.checkLoadingHistoryTracks();
}catch(sk){var sf=this.loginForm.getPasswordTextFieldValue();
return this._onLoginException(se,sf,sk);
}this.stopAjaxAnimator();
return true;
},_loginExecuteStage3:function(){if(this.processingLoginStage>=this.processingLoginStageGOT_BUDDYTO){this.info("_loginExecuteStage3 multiple call ignored");
return;
}var sm=this.getMyLoginName();

if(sm==null){return;
}
try{this.processingLoginStage=this.processingLoginStageGOT_BUDDYTO;
var sn={loginName:sm,processingLoginStage:this.processingLoginStage};
this.eventManager.fireEvent(iw,sn);
this.getFriendOf();
}catch(so){var sl=this.loginForm.getPasswordTextFieldValue();
return this._onLoginException(sm,sl,so);
}return true;
},fireLoginDone:function(){if(this.processingLoginStage==this.processingLoginStageLOGGEDOUT||this.processingLoginStage==this.processingLoginStageLOGGEDIN){this.info("fireLoginDone multiple call ignored");
return;
}var sp=this.getMyLoginName();

if(sp==null){return;
}this.processingLoginStage=this.processingLoginStageLOGGEDIN;
try{this.info("Account timezone="+this.getMyAccountTO().getTimezone());

if(this.menuBar!=null){this.menuBar.showExpiryWarning();
}}catch(sr){this.errorMsgBoxDeveloper(is+sr);
}
try{this.sendGetPermissionTemplates();
}catch(ss){this.errorMsgBoxDeveloper(iR+ss);
}
try{this.subscribeOnlineStatus();
}catch(st){this.errorMsgBoxDeveloper(P+st);
}
try{this.subscribeStatus(sp);
}catch(su){this.errorMsgBoxDeveloper(z+su);
}
try{this.subscribeAlarm(sp);
}catch(sv){this.errorMsgBoxDeveloper(gf+sv);
}
try{this.subscribeXSms(sp);
}catch(sw){this.errorMsgBoxDeveloper(gj+sw);
}
try{this.getAlarms(sp,true);
}catch(sx){this.errorMsgBoxDeveloper(it+sx);
}var sq={loginName:this.watchee.getLoginName(),processingLoginStage:this.processingLoginStage};
this.eventManager.fireEvent(bS,sq);
},getSyncGroupIdList:function(sy,sz){var sy=sy||ir;
var sz=sz||hT;
this.getLogger().info("Send 'getSyncGroupIdList' message to "+sy);
var sD=this.watchee.xbAccess.getSync(sy);

if(sD.length==0){var sC=new net.watchee.PropertyCollections();
var sB=new net.watchee.GroupIdInfo(sC,sz);
return sB;
}var sE=sD[0];
var sA=sE.getContentStr();
var sC=net.watchee.PropertyCollections.parseXml(sA);

if(sC==null){var sC=new net.watchee.PropertyCollections();
var sB=new net.watchee.GroupIdInfo(sC,sz);
return sB;
}var sB=new net.watchee.GroupIdInfo(sC,sz);
return sB;
},getSyncGps:function(sF){var sH=this.watchee.getBuddyManager().getFriendOfOrMyself(sF);

if(sH==null){this.warn("getSyncGps: Buddy not known "+sF);
return [];
}
if(!sH.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_CFG)){this.warn("getSyncGps: You have not permission to get configuration of "+sF);
return [];
}var sG=gy+sF+U;
this.getLogger().info("Send 'getSyncGps' message to "+sG+" to check if middleware knows the location");
return this.watchee.xbAccess.getSync(sG);
},subscribeGps:function(sI){if(this.watchee!=null&&org.xmlBlaster.util.isDefined(sI)){if(!sI.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_GPS))return;
var sJ=fH;
var sK=gC+sI.getLoginName()+fs;
this.watchee.subscribe(sK,sJ,this.returnQosOrException,this,gx);
}},unSubscribeGps:function(sL){if(this.watchee!=null&&org.xmlBlaster.util.isDefined(sL)){var sM=null;
var sN=gC+sL.getLoginName()+fs;
this.watchee.unSubscribe(sN,sM,this.returnQosOrException,this,gA);
}},subscribeXSms:function(sO){if(this.watchee!=null){if(org.xmlBlaster.util.isDefined(sO)){var sP=eB;
var sQ=gC+sO+fu;
this.watchee.subscribe(sQ,sP,this.returnQosOrException,this,iq);
}else{var sP=null;
var sQ=gW;
this.watchee.subscribe(sQ,sP,this.returnQosOrException,this,iq);
}}},unSubscribeXSms:function(sR){if(this.watchee!=null){if(org.xmlBlaster.util.isDefined(sR)){var sS=null;
var sT=gC+sR+fu;
this.watchee.unSubscribe(sT,sS,this.returnQosOrException,this,gA);
}else{var sS=null;
var sT=iD;
this.watchee.unSubscribe(sT,sS,this.returnQosOrException,this,gA);
}}},subscribeOnlineStatus:function(){if(this.watchee!=null){var sU=d;
var sV=cs+net.watchee.TOPICID_ONLINESTATUS+ik;
this.watchee.subscribe(sV,sU,this.returnQosOrException,this,gx);
}},unSubscribeOnlineStatus:function(){if(this.watchee!=null){var sW=null;
var sX=cs+net.watchee.TOPICID_ONLINESTATUS+ik;
this.watchee.unSubscribe(sX,sW,this.returnQosOrException,this,gA);
}},subscribeCfg:function(sY){if(this.watchee!=null){if(org.xmlBlaster.util.isDefined(sY)){var tb=this.watchee.getBuddyManager().getFriendOfOrMyself(sY);

if(tb==null||!tb.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_CFG))return;
var ta=gM+gK+dW+hV+gQ+gP+dU;
var tc=gC+sY+hX;
this.watchee.subscribe(tc,ta,this.returnQosOrException,this,gx);
}else{var ta=null;
var tc=iD;
this.watchee.subscribe(tc,ta,this.returnQosOrException,this,gx);
}}},unSubscribeCfg:function(td){if(this.watchee!=null){if(org.xmlBlaster.util.isDefined(td)){var te=null;
var tf=gC+td+hX;
this.watchee.unSubscribe(tf,te,this.returnQosOrException,this,gA);
}else{var te=null;
var tf=iD;
this.watchee.unSubscribe(tf,te,this.returnQosOrException,this,gA);
}}},subscribeStatus:function(tg){if(this.watchee!=null){if(org.xmlBlaster.util.isDefined(tg)){if(tg!=this.watchee.getLoginName()){var ti=this.watchee.getBuddyManager().getFriendOfOrMyself(tg);

if(ti==null){this.info("No subscibe .status for "+tg+", is not friendOf");
return;
}
if(!ti.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_DEVICE_STATUS)){this.info("No subscibe .status permission for "+tg);
return;
}}var th=gM+gK+dW+bY+gQ+gP+dU;
var tj=gC+tg+jt;
this.watchee.subscribe(tj,th,this.returnQosOrException,this,gx);
}else{var th=null;
var tj=iD;
this.watchee.subscribe(tj,th,this.returnQosOrException,this,gx);
}}},unSubscribeStatus:function(tk){if(this.watchee!=null){if(org.xmlBlaster.util.isDefined(tk)){var tl=null;
var tm=gC+tk+jt;
this.watchee.unSubscribe(tm,tl,this.returnQosOrException,this,gA);
}else{var tl=null;
var tm=iD;
this.watchee.unSubscribe(tm,tl,this.returnQosOrException,this,gA);
}}},subscribeAlarm:function(tn){if(this.watchee!=null&&org.xmlBlaster.util.isFilled(tn)){if(tn!=this.watchee.getLoginName()){var tp=this.watchee.getBuddyManager().getFriendOfOrMyself(tn);

if(tp==null||!tp.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_ALARM))return ;
}var to=gM+gK+dW+hV+gQ+gP+dU;
var tq=gC+tn+ju;
this.watchee.subscribe(tq,to,this.returnQosOrException,this,gx);
}},unSubscribeAlarm:function(tr){if(this.watchee!=null&&org.xmlBlaster.util.isFilled(tr)){var ts=null;
var tt=gC+tr+ju;
this.watchee.unSubscribe(tt,ts,this.returnQosOrException,this,gA);
}},onAlarmEventFromServer:function(tu,tv){if(tu.getGpsData()!=null){var tw=tu.getGpsData().hasAlarmOfType(net.watchee.RuleTypeEnum.GPSSIGNAL_OK.getId());

if(tw)tv.setGpsSignalOk(true);
var tx=tu.getGpsData().hasAlarmOfType(net.watchee.RuleTypeEnum.GPSSIGNAL_LOST.getId());

if(tx)tv.setGpsSignalOk(false);
}
if(tu.isRuleTypeEnum(net.watchee.RuleTypeEnum.ENTER_SLEEPMODE)){tv.setDeviceSleeping(true);
}
if(tu.isRuleTypeEnum(net.watchee.RuleTypeEnum.ENTER_AWAKE)){tv.setDeviceSleeping(false);
}
if(tu.isAttachedToRule()){tv.countAlarmsAttachedToRulesIncrement();
}tv.countAlarmsIncrement();
this.fireAlarmChangedEvent(tu,tx,tv);
},receivedServiceResponse:function(ty,tz,tA){var tI=org.xmlBlaster.util.PropTO;

for(var k=0,ud=ty.getServices().length;k<ud;k++){var tM=ty.getServices()[k];
var ub=tM.getPropValue(tI.KEY_TASK);
var tY=hv+ub+hK;
var tF=(tz==null)?null:tz.getClientProperty(tI.KEY_RESULT_CSVFLAG,null);

if(tM.getProp(tI.KEY_RESULT_CSVFLAG)!=null){tF=tM.getPropValue(tI.KEY_RESULT_CSVFLAG);
}else if(tF!=null){tM.addProp(new tI(tI.KEY_RESULT_CSVFLAG,tF));
}var uf=this.getRequestResponseDispatcher().onResponseOrException(tM.getBounce(),tM,tF);

if(uf){this.getLogger().debug(tY+" "+tM.getPropValue(tI.KEY_BOUNCE)+" done");
this.stopAjaxAnimator();
return;
}
if(tM.isException()){if(ub==tI.VALUE_TASK_NAMED_GETCURRENTLOCATION){this.getLogger().debug(tY+"EXCEPTION: Ignore if tracker is offline "+tM.getBounce());
return;
}this.getLogger().debug(tY+"EXCEPTION: "+tM.getBounce());

if(this.processingLogout)return;
if(tM.isTask(org.xmlBlaster.util.PropTO.VALUE_TASK_NAMED_ADDBUDDIES))this.errorMsgBox(this.trc(gF,ew,tM.getBounce()));
else if(tM.isTask(org.xmlBlaster.util.PropTO.VALUE_TASK_NAMED_REMOVEBUDDIES))this.errorMsgBox(this.trc(gF,cY,tM.getBounce(),tM.getBounce()));
else{var tH=null;

if(tH==null)tH=new org.xmlBlaster.util.XmlBlasterException(tM.getErrorCode(),dF,tM.getErrorMessage());

if(tM.getErrorCode()==fC){this.errorMsgBox(this.trc(fX,hx),tH);
}else{this.error("Your request '"+tM.getTask()+"' failed for bounceId ="+tM.getBounce()+": "+tH);
this.errorMsgBox(this.trc(gF,bP,tM.getTask()),tH);
}}this.stopAjaxAnimator();
return;
}switch(ub){case tI.VALUE_TASK_NAMED_ONLINESTATUS:this.getLogger().debug(tY+"Not expected: "+tM.getResult());
break;
case tI.VALUE_TASK_NAMED_GETBUDDIES:var tK=net.watchee.BuddyListTO.parse(this.watchee,tM.getResult());
this.getLogger().debug(tY+"Calling BuddyManager.setBuddies");
this.watchee.getBuddyManager().setBuddies(tK);
this._loginExecuteStage3();
break;
case tI.VALUE_TASK_NAMED_GETFRIENDOF:var tS=true;
var tR=net.watchee.BuddyListTO.parse(this.watchee,tM.getResult(),tS);
this.getLogger().debug(tY+"Calling BuddyManager.setFriendOf");
this.watchee.getBuddyManager().setFriendOf(tR);

if(tR.getSize()==0){this.watchee.getAccountTO().getBuddyTO().setAutoTrackingCentered(xbProperties.getBoolean(eS,true));
}this.fireLoginDone();
break;
case tI.VALUE_TASK_NAMED_GETCURRENTLOCATION:if(true){var tX=tM.getBounce();
var uc=tM.getResult();
this.getLogger().info(tY+"Received "+uc);
var tE=this.watchee.getDevice(tA.getDeviceId());
var tT=new net.watchee.GPSData(uc,tE);
var tV=(tE==null)?null:tE.getCurrentTrack();
var ul=tX.indexOf(h)!=-1;
this.watchee.getMapManager().showAndCenterLocation(tV,tT,ul);
}else{this.getLogger().info(tY+"Ignoring response "+ub);
}break;
case tI.VALUE_TASK_NAMED_ALARMEVENT:var tN=net.watchee.PropertyCollection.parseXml(tM.getResult());
var tD=new track.rulesmodel.AlarmTO(this,tN);
var tE=this.watchee.getDevice(tD.getDeviceId());

if(tE==null){this.errorMsgBoxDeveloper(this.trc(gF,hh,tL,tD));
return;
}this.getLogger().debug(tY+tE.getLoginName());
this.onAlarmEventFromServer(tD,tE);
var ua=tD.getEventSinkInfoMap().get(G,null);

if(ua!=null){var ui=xbGetSound(ua);
net.watchee.playSound(ui,ui,this);
}break;
case tI.VALUE_TASK_NAMED_GETPERMISSIONSTEMPLATES:this.getLogger().debug(tY);
this.watchee.setPermissionTemplateList(net.watchee.PermissionTemplateListTO.parse(tM.getResult()));
break;
case tI.VALUE_TASK_NAMED_REMOVELOCATIONS:var tL=tM.getPropValue(tI.KEY_BOUNCE);
this.getLogger().debug(tY+tL);
var tE=this.watchee.getDevice(tL);
var tO=tM.getResult();
this.stopAjaxAnimator();
break;
case tI.VALUE_TASK_NAMED_GETTRACKS:var tL=tM.getPropValue(tI.KEY_BOUNCE);
this.getLogger().debug(tY+tL);
var tE=this.watchee.getDevice(tL);
var tQ=net.watchee.Track.parseGpxEnmea(tE,tM.getResult(),tI.VALUE_TASK_NAMED_GETTRACKS);
this.stopAjaxAnimator();
break;
case tI.VALUE_TASK_NAMED_GETTRACK:try{var tL=tM.getPropValue(tI.KEY_BOUNCE);
this.getLogger().debug(tY+tL);
var tE=this.watchee.getDevice(tL);
var tQ=net.watchee.Track.parseGpxEnmea(tE,tM.getResult(),tI.VALUE_TASK_NAMED_GETTRACK);
}catch(um){this.errorMsgBoxDeveloper(tY+um);
}this.stopAjaxAnimator();
break;
case tI.VALUE_TASK_NAMED_GETACCOUNT:this.getLogger().debug(tY);
var tP=net.watchee.AccountTO.parse(this.watchee,tM.getResult());
this.watchee.getBuddyManager().fireChangeMyAccountEvent(tP);
this.stopAjaxAnimator();

if(this.processingLoginStage==this.processingLoginStageWAITING_ACCOUNTTO||this.processingLoginStage==this.processingLoginStageAUTHENTICATED){this._loginExecuteStage2();
}break;
case tI.VALUE_TASK_NAMED_CHANGEPASSWORD:var tL=this.loginForm.getLoginTextFieldValue();
this.getLogger().debug(tY+tL);
var uk=tM.getBounce();

if(tM.isException()){this.errorMsgBox(this.trc(gF,du,tL,tM.getResult()));
return;
}this.stopAjaxAnimator();
this.loginForm.setPasswordTextFieldValue(uk);
this.infoMsgBox(this.trc(iC,hL,tL));
break;
case tI.VALUE_TASK_NAMED_CHANGEACCOUNT:var tL=tM.getBounce();
this.getLogger().debug(tY+tL);

if(tM.isException()){this.errorMsgBox(this.trc(gF,fW),tL);
return;
}this.stopAjaxAnimator();
var tU=this.watchee.getBuddyManager().getBuddyOrFriendOf(tL);
this.watchee.getBuddyManager().fireChangeAccountEvent(tU);
this.infoMsgBox(this.trc(iC,eC,tL));
break;
case tI.VALUE_TASK_NAMED_REMOVEACCOUNT:var tL=tM.getBounce();
var tG=this.getMyOemName();
this.logout();
this.infoMsgBox(this.trc(iC,hm,tG,tL));
break;
case net.watchee.Device.SERVICE_KEY_SETSETTING:this.getLogger().debug(tY+"Response for CT100: "+tM.getResult());
break;
case net.watchee.Device.SERVICE_KEY_GETSETTINGS:this.stopAjaxAnimator();
var tL=tz.getSender().getSubjectId();
this.getLogger().debug(tY+tL);

if(tA.isCfg())this.unSubscribeCfg(tL);
var tE=this.watchee.getDevice(tL);

if(tE==null){if(tL==x){var tB=tM.getPropValue(tI.KEY_RESULTMIME);
var tN=net.watchee.PropertyCollection.parseXml(tM.getResult());

if(tN!=null){var tF=tN.getStr(hU,gE);

if(tF.indexOf(fL)==-1){if(this.xsmsPhoto!=null&&this.xsmsPhoto.statusTab!=null){var tL=tN.getStr(iB,gE);
var uh=tN.getStr(hB,gE);
var uj=tN.getStr(bn,null);
var tC=(uj==null)?uh:uj;

if(uj!=null){var tW=net.watchee.PropertyCollection.parseXml(uj);
var ug=tW.getStr(cw);

if(ug!=null){tC=ug;
var ue=tW.getInt(cf,0);

if(ug.indexOf(dP)==0){tC=this.trc(fo,fc,ue,uh);
}else{tC=this.trc(fo,C,ue,uh);
}}}var tJ=iv;
this.xsmsPhoto.statusTab.receivedStatus(tJ,tL,tC,null,tF);
}}}}else{this.errorMsgBoxDeveloper(this.trc(gF,T,tL));
}return;
}var tN=net.watchee.PropertyCollection.parseXml(tM.getResult());

if(tN==null){if(tA.isCfg()&&tz.getSender().getPubSessionId()<0){this.warn("TODO: Remove subscribeCfg as soon as all WinCE devices are updated:"+tM.toXml());
}else{this.error("propertyCollection (getCommandList) is null: "+tM.toXml());
}break;
}tE.setPropertyCollection(tN,tN.isAll());
break;
case net.watchee.Device.VALUE_TASK_NAMED_GETCOMMANDLIST:this.stopAjaxAnimator();
var tL=tz.getSender().getSubjectId();
this.getLogger().debug(tY+tL);
var tE=this.watchee.getDevice(tL);

if(tE==null){this.errorMsgBoxDeveloper(this.trc(gF,g,tL)+y+tA+r+org.xmlBlaster.util.escapeXml(tz.toXml()));
return;
}var tN=net.watchee.PropertyCollection.parseXml(tM.getResult());

if(tN==null){if(tA.isCfg()&&tz.getSender().getPubSessionId()<0){this.warn("TODO: Remove subscribeCfg as soon as all J2ME/WinCE devices are updated:"+tM.toXml());
}else{this.error("propertyCollection (getCommandList) is null: "+tM.toXml());
}break;
}
if(this.getWindowManager().testDeviceWindow!=null)this.getWindowManager().testDeviceWindow.loadData(tN);
else this.errorMsgBox(this.trc(gF,iV,tL));
break;
default:this.getLogger().error(tY+"Ignoring received service message of task="+tM.getPropValue(tI.KEY_TASK)+": "+tM.getPropValue(tI.KEY_RESULT));
}}},removeAllBuddies:function(){this.buddiesWidget.removeAllBuddies(false);
},getBuddiesWidget:function(){return this.buddiesWidget;
},receivedBuddyList:function(un){this.startAjaxAnimator(this.trc(gG,gh,un.getBuddyList().length));
this.handleChangedBuddyAndFriendOfList();
this.startAjaxAnimator(this.trc(gG,fY));
this.stopAjaxAnimator();
},handleChangedBuddyAndFriendOfList:function(){if(this.watchee.getBuddyManager().isSync()==false){this.getLogger().debug("handleChangedBuddyAndFriendOfList ignored as not all data available");
return;
}this.removeAllBuddies(false);
var up=this.watchee.getBuddyManager().getBuddyAndFriendOfList();
var uo=1;
this.iterBuddyData={buddyTOArr:up,icurr:0,stepWidth:uo,inext:uo,myself:this,takeARest:0};

if(org.xmlBlaster.util.isOpera)this.iterBuddyData.takeARest=400;
this.startAjaxAnimator(this.trc(gG,cW,up.length),100000);
this._handleChangedBuddyAndFriendOfListIterate();
},_handleChangedBuddyAndFriendOfListIterate:function(){var ur=this.iterBuddyData;

for(;ur.icurr<ur.inext&&ur.icurr<ur.buddyTOArr.length;ur.icurr++){if(this.watchee==null)return;
this.changeLabelAjaxAnimator(this.trc(gG,ds,(ur.icurr+1),ur.buddyTOArr.length));
var us=ur.buddyTOArr[ur.icurr];
this.watchee.getXbAccess().logTimeElapsed(bb+us.getLoginName());
var ut=us.getLoginName();
var uq=this.watchee.getDevice(ut);

if(uq==null){this.getLogger().error("handleChangedBuddyAndFriendOfList: Error: Device "+ut+" is not existing!");
uq=this.watchee.createNewDevice(ut);
}us.setDevice(uq);
this.buddiesWidget.addBuddy(us);
this.subscribeStatus(ut);
this.subscribeAlarm(ut);

if(us.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_ALARM)){qx.event.Timer.once(function(){this.getAlarms(ut,true);
},this,5000);
}
if(us.isOnline()){this.sendGetDeviceConfiguration(us.getLoginName());
}}
if(ur.icurr==ur.buddyTOArr.length){this.stopAjaxAnimator();
return ;
}ur.inext+=ur.stepWidth;
qx.event.Timer.once(this._handleChangedBuddyAndFriendOfListIterate,this,ur.takeARest);
},onBuddyRemovedEvent:function(uu,uv){this.unSubscribeStatus(uu.getDevice().getDeviceId());
this.unSubscribeAlarm(uu.getDevice().getDeviceId());
},receivedFriendOfList:function(uw){this.startAjaxAnimator(this.trc(gG,fA,uw.getBuddyList().length));
this.info("Received friendOf list with "+uw.getBuddyList().length+" entries");
this.handleChangedBuddyAndFriendOfList();
},receivedxSMS:function(ux){if(this.xsmsPhoto!=null&&this.xsmsPhoto.xsmsTab!=null){this.xsmsPhoto.xsmsTab.receivedxSMS(ux);
}},onAjaxUpdate:function(uy){var uV=gR;
var uF=this.watchee;

for(var uz=0;uz<uy.length;uz++){var vb=uy[uz];

try{if(uF==null){this.getLogger().warn(uV+" Ignoring unexpected update: "+vb.dump());
return;
}
if(vb.isException()){if(this.processingLogout){return ;
}this.getLogger().debug(uV+"Exception msgUnit="+vb.toXml());
var uD=vb.getXmlBlasterException();
this.errorMsgBox(this.trc(gF,dT+gN+dV+gO+gH+gJ+eb),uD);
this.logout(false);
return ;
}var uE=org.xmlBlaster.util.PropTO;
var uU=vb.getQosData().getClientProperty(uE.KEY_BOUNCE,null);

if(uU!=null){var uW;

if(vb.getKeyData().getContentMime()==uE.VALUE_RESULTMIME_PREFIX){var uP=org.xmlBlaster.util.ServiceListTO.parse(vb.getContentStr());
uW=uP.getServices()[0];
}else{uW=new org.xmlBlaster.util.ServiceTO();
uW.addProp(new uE(fE,vb));
uW.addProp(new uE(uE.KEY_RESULTMIME,vb.getKeyData().getContentMime()));
uW.addProp(new uE(uE.KEY_RESULT,vb.getContentStr()));
uW.addProp(new uE(uE.KEY_TASK,cR));
}var uC=vb.getQosData().getClientProperty(uE.KEY_RESULT_CSVFLAG,null);

if(uC!=null){uW.addProp(new uE(uE.KEY_RESULT_CSVFLAG,uC));
}var uY=this.getRequestResponseDispatcher().onResponseOrException(uU,uW,uC);

if(uY){this.getLogger().debug(uV+" "+uU+" done");
this.stopAjaxAnimator();
return;
}}var uA=vb.getKeyData().getOid();
var uB=new net.watchee.WatcheeTopic(vb);

if(uA==net.watchee.TOPICID_ONLINESTATUS){var uS=hf;
var uH=vb.getQosData().getClientProperty(uS,null);
var uJ=vb.getQosData().getClientProperty(fx,false);
var uO=vb.getContentStr().indexOf(bR)>0?net.watchee.BuddyTO.STATUS_ONLINE:net.watchee.BuddyTO.STATUS_OFFLINE;
uF.getBuddyManager().changedOnlineStatus(uH,uO,uJ);
continue;
}if(uB.isServiceResponse()||uB.isCfg()||uB.isStatus()||uB.isAlarm()){var content=vb.getContentStr();

if(!org.xmlBlaster.util.isFilled(content)&&uB.isCfg()){continue;
}var uP=org.xmlBlaster.util.ServiceListTO.parse(content);
uF.getXbAccess().logTimeElapsed(fg+uP.countServices());
this.receivedServiceResponse(uP,vb.getQosData(),uB);
continue;
}var uR=uB.getDeviceId();

if(uR.length<1){this.getLogger().warn("Ignoring empty device '"+uR+"' from "+vb.dump());
continue;
}var uT=uF.getDevice(uR);

if(uT==null){if(uF.getLoginName()!=uR)this.getLogger().error("Error-onAjaxUpdate: Device "+uR+" is not existing!\n"+vb.dump());
uT=uF.createNewDevice(uR);
}uT.updateNiceDeviceName(vb);
if(uB.isxSMS()){this.getLogger().info(uV+uB.getTopicId());
var uQ=net.watchee.X_SMS.parse(vb.getQosData().getSender().getRelativeName(),vb.getContentStr());
var va=vb.getQosData().getClientProperty(eF,false);

if(va){var uG=iv;
var uH=vb.getQosData().getClientProperty(iB,false);
var uK=uQ.getBody();
var uC=vb.getQosData().getClientProperty(hU,gE);
var uL=vb.getQosData().getClientProperty(iu,null);

if(this.xsmsPhoto!=null&&this.xsmsPhoto.statusTab!=null){this.xsmsPhoto.statusTab.receivedStatus(uG,uH,uK,uL,uC);
}}else{uQ.xmlBlasterRcvTimestampNanos=vb.getQosData().getRcvTimestampNanos();
uQ.setClientProperties(vb.getQosData().getClientProperties());
uT.addReceivedxSMS(uQ);
uT.addReceivedxSMSToInfoWindow();
this.receivedxSMS(uQ);
}}else if(uB.isNmea()){this.getLogger().info(uV+uB.getTopicId());
var uX=uF.addCurrentENMEA(uT,vb,this.groupIdInfo);

if(uX!=null){if(uU&&uU.indexOf(dp)!=-1&&uU.indexOf(this.getMySessionName())!=-1){var uM=false;
this.watchee.getMapManager().showAndCenterLocation(uT.getCurrentTrack(),uX,uM);
}}else{this.errorMsgBox(this.trc(gF,cD,vb.getContentStr()));
}}else if(uB.isReset()){this.getLogger().info(uV+": Got update "+uB.getTopicId()+" command="+uB.getCmdStr());
var uN=uT.getCurrentTrack();
uN.clearMappingData();
}else{this.errorMsgBox(this.trc(gF,ep,uA));
}}catch(vc){var uI=vb.toXml();
uI=org.xmlBlaster.util.replaceAllTokens(uI,gU,hz);
uI=org.xmlBlaster.util.replaceAllTokens(uI,dr,bi);
this.errorMsgBoxDeveloper(fy+uI+cE+vc+el);
}}},logout:function(vd){this.processingLoginStage=this.processingLoginStageLOGGEDOUT;

if(this.watchee==null)return;
this.getLogger().debug("logout called "+this.watchee.getLoginName()+" ...");

try{this.processingLogout=true;
var vg={loginName:this.watchee.getLoginName()};
this.eventManager.fireEvent(eX,vg);
var vd=org.xmlBlaster.util.toBoolean(vd,true);
this.startAjaxAnimator(this.trc(cJ,ea));
this.loginForm.isLoggedOut();
this.makeLoginLabel(this.trc(cq,gV));
try{this.requestResponseDispatcher.clear();
}catch(vh){this.errorMsgBoxDeveloper(R+vh);
}
if(this.menuBar!=null){this.menuBar.onLogout();
}
try{this.getWindowManager().clear();
}catch(vi){this.errorMsgBoxDeveloper(eG+vi);
}
if(vd)this.watchee.disconnect();

try{this.buddiesWidget.clear();
}catch(vj){this.errorMsgBoxDeveloper(et+vj);
}
if(this.xsmsPhoto!=null){this.xsmsPhoto.setEnabled(false);
this.xsmsPhoto.clearTabView();
}
if(this.embeddedFramelb!=null){try{this.embeddedFramelb.setEnabled(false);
}catch(vk){this.errorMsgBoxDeveloper(cd+vk);
}}
try{if(org.xmlBlaster.util.isDefined(this.preferenceWindow)){this.preferenceWindow.close();
this.preferenceWindow=null;
}}catch(vl){this.errorMsgBoxDeveloper(di+vl);
}var ve=this.getMyRoot();
var vf=ve.getChildren();

for(var i=0;i<vf.length;i++){if(vf[i] instanceof track.pref.PreferenceWindow){vf[i].destroyPopup();
}}if(this.watchee!=null)this.watchee.shutdown();
this.watchee=null;
this.stopAjaxAnimator();
}catch(vm){this.errorMsgBoxDeveloper(eI,vm);
}},returnQosOrException:function(vn,vo,vp){var vp=vp||null;

try{if(vn==null){this.getLogger().error("returnQosOrException with dataReceived=null");
return;
}var vr=org.xmlBlaster.util.getDOMDocument(vn);
var vt=org.xmlBlaster.util.parseXmlBlasterResponse(vr);

if(vt.length==0){this.getLogger().info("returnQosOrException '"+vp+"' with msgUnits=0");
return;
}var vv=vt[0];

if(vv.isException()){var vu=vv.getXmlBlasterException();
var vq=vu.getErrorCodeStr();
var vs=vu.getMessage();

if(vp==null){this.errorMsgBox(this.trc(gF,t),vv.getXmlBlasterException());
return;
}
if(vu.isTomcatServerSide()){vu.setErrorCodeStr(dS);
this.logout(false);
this.errorMsgBox(this.trc(gF,dT+gN+dV+gO+gH+gJ+eb),vu);
}else if(vn.indexOf(dm)!=-1){this.logout(false);
this.errorMsgBox(this.trc(gF,fk));
}else if(vn.indexOf(da)!=-1){if(this.watchee==null){return ;
}this.logout(false);
this.errorMsgBox(this.trc(gF,cL,vq));
}else if(ft==vp){this.errorMsgBox(this.trc(gF,s,vq));
}else if(vq==dG){this.getLogger().warn("Server Exception, "+vp+" failed: "+vq+" "+vs);
}else if(vq.indexOf(fe)!=-1&&vp!=je&&vp!=fF){this.errorMsgBoxDeveloper(cX+vp+bK+vq+bV+vs);
}else{this.errorMsgBox(this.trc(gF,eH,vp),vv.getXmlBlasterException());
}this.stopAjaxAnimator();
return;
}else{}}catch(vw){this.errorMsgBox(this.trc(gF,E),vw);
}},shutdown:function(){this.logout();
}},destruct:function(){this._disposeFields(fQ,cB,eh,jm,cl);
this._disposeObjects(il,S,bM,gi,cC,bT,jl,jh,gv,dj,bd,O,dv,ib,p,bL,fz,gS,ca,bF,jk);
}});
})();
(function(){var d="qx.ui.decoration.MBackgroundColor",c="Color",b="_applyBackgroundColor",a="";
qx.Mixin.define(d,{properties:{backgroundColor:{check:c,nullable:true,apply:b}},members:{_tintBackgroundColor:function(e,f,g){if(f==null){f=this.getBackgroundColor();
}{f=qx.theme.manager.Color.getInstance().resolve(f);
};
g.backgroundColor=f||a;
},_resizeBackgroundColor:function(h,i,j){var k=this.getInsets();
i-=k.left+k.right;
j-=k.top+k.bottom;
return {left:k.left,top:k.top,width:i,height:j};
},_applyBackgroundColor:function(){}}});
})();
(function(){var t="_applyBackgroundImage",s="repeat",r="",q="mshtml",p="engine.name",o="backgroundPositionX",n='<div style="',m="backgroundPositionY",l='</div>',k="no-repeat",d="engine.version",j="scale",g='">',c=" ",b="repeat-x",f="repeat-y",e="hidden",h="qx.ui.decoration.MBackgroundImage",a="String",i="browser.quirksmode";
qx.Mixin.define(h,{properties:{backgroundImage:{check:a,nullable:true,apply:t},backgroundRepeat:{check:[s,b,f,k,j],init:s,apply:t},backgroundPositionX:{nullable:true,apply:t},backgroundPositionY:{nullable:true,apply:t},backgroundPosition:{group:[m,o]}},members:{_generateMarkup:this._generateBackgroundMarkup,_generateBackgroundMarkup:function(u,content){var y=r;
var x=this.getBackgroundImage();
var w=this.getBackgroundRepeat();
var top=this.getBackgroundPositionY();

if(top==null){top=0;
}var z=this.getBackgroundPositionX();

if(z==null){z=0;
}u.backgroundPosition=z+c+top;
if(x){var v=qx.util.AliasManager.getInstance().resolve(x);
y=qx.bom.element.Decoration.create(v,w,u);
}else{if((qx.core.Environment.get(p)==q)){if(parseFloat(qx.core.Environment.get(d))<7||qx.core.Environment.get(i)){u.overflow=e;
}}
if(!content){content=r;
}y=n+qx.bom.element.Style.compile(u)+g+content+l;
}return y;
},_applyBackgroundImage:function(){}}});
})();
(function(){var j="solid",i="_applyStyle",h="double",g="px ",f="dotted",e="_applyWidth",d="Color",c="",b="dashed",a="Number",D=" ",C="shorthand",B="widthTop",A="styleRight",z="styleBottom",y="widthBottom",x="widthLeft",w="styleTop",v="colorBottom",u="styleLeft",q="widthRight",r="colorLeft",o="colorRight",p="colorTop",m="border-top",n="border-left",k="border-right",l="qx.ui.decoration.MSingleBorder",s="border-bottom",t="absolute";
qx.Mixin.define(l,{properties:{widthTop:{check:a,init:0,apply:e},widthRight:{check:a,init:0,apply:e},widthBottom:{check:a,init:0,apply:e},widthLeft:{check:a,init:0,apply:e},styleTop:{nullable:true,check:[j,f,b,h],init:j,apply:i},styleRight:{nullable:true,check:[j,f,b,h],init:j,apply:i},styleBottom:{nullable:true,check:[j,f,b,h],init:j,apply:i},styleLeft:{nullable:true,check:[j,f,b,h],init:j,apply:i},colorTop:{nullable:true,check:d,apply:i},colorRight:{nullable:true,check:d,apply:i},colorBottom:{nullable:true,check:d,apply:i},colorLeft:{nullable:true,check:d,apply:i},left:{group:[x,u,r]},right:{group:[q,A,o]},top:{group:[B,w,p]},bottom:{group:[y,z,v]},width:{group:[B,q,y,x],mode:C},style:{group:[w,A,z,u],mode:C},color:{group:[p,o,v,r],mode:C}},members:{_styleBorder:function(E){{var G=qx.theme.manager.Color.getInstance();
var K=G.resolve(this.getColorTop());
var H=G.resolve(this.getColorRight());
var F=G.resolve(this.getColorBottom());
var J=G.resolve(this.getColorLeft());
};
var I=this.getWidthTop();

if(I>0){E[m]=I+g+this.getStyleTop()+D+(K||c);
}var I=this.getWidthRight();

if(I>0){E[k]=I+g+this.getStyleRight()+D+(H||c);
}var I=this.getWidthBottom();

if(I>0){E[s]=I+g+this.getStyleBottom()+D+(F||c);
}var I=this.getWidthLeft();

if(I>0){E[n]=I+g+this.getStyleLeft()+D+(J||c);
}E.position=t;
E.top=0;
E.left=0;
},_resizeBorder:function(L,M,N){var O=this.getInsets();
M-=O.left+O.right;
N-=O.top+O.bottom;
if(M<0){M=0;
}
if(N<0){N=0;
}return {left:O.left-this.getWidthLeft(),top:O.top-this.getWidthTop(),width:M,height:N};
},_getDefaultInsetsForBorder:function(){return {top:this.getWidthTop(),right:this.getWidthRight(),bottom:this.getWidthBottom(),left:this.getWidthLeft()};
},_applyWidth:function(){this._applyStyle();
this._resetInsets();
},_applyStyle:function(){}}});
})();
(function(){var b="px",a="qx.ui.decoration.Single";
qx.Class.define(a,{extend:qx.ui.decoration.Abstract,include:[qx.ui.decoration.MBackgroundImage,qx.ui.decoration.MBackgroundColor,qx.ui.decoration.MSingleBorder],construct:function(c,d,e){qx.ui.decoration.Abstract.call(this);
if(c!=null){this.setWidth(c);
}
if(d!=null){this.setStyle(d);
}
if(e!=null){this.setColor(e);
}},members:{_markup:null,getMarkup:function(f){if(this._markup){return this._markup;
}var g={};
this._styleBorder(g,f);
var h=this._generateBackgroundMarkup(g);
return this._markup=h;
},resize:function(i,j,k){var l=this._resizeBorder(i,j,k);
i.style.width=l.width+b;
i.style.height=l.height+b;
i.style.left=parseInt(i.style.left)+l.left+b;
i.style.top=parseInt(i.style.top)+l.top+b;
},tint:function(m,n){this._tintBackgroundColor(m,n,m.style);
},_isInitialized:function(){return !!this._markup;
},_getDefaultInsets:function(){return this._getDefaultInsetsForBorder();
}},destruct:function(){this._markup=null;
}});
})();
(function(){var a="qx.ui.decoration.Uniform";
qx.Class.define(a,{extend:qx.ui.decoration.Single,construct:function(b,c,d){qx.ui.decoration.Single.call(this);
if(b!=null){this.setWidth(b);
}
if(c!=null){this.setStyle(c);
}
if(d!=null){this.setColor(d);
}}});
})();
(function(){var j="px ",i=" ",h='',g="Color",f="Number",e="border-top",d="border-left",c="border-bottom",b="border-right",a="shorthand",C="line-height",B="engine.name",A="mshtml",z="innerWidthRight",y="top",x="innerColorBottom",w="innerWidthTop",v="innerColorRight",u="innerColorTop",t="relative",q="browser.documentmode",r="innerColorLeft",o="qx.ui.decoration.MDoubleBorder",p="left",m="engine.version",n="innerWidthBottom",k="innerWidthLeft",l="position",s="absolute";
qx.Mixin.define(o,{include:[qx.ui.decoration.MSingleBorder,qx.ui.decoration.MBackgroundImage],construct:function(){this._getDefaultInsetsForBorder=this.__kL;
this._resizeBorder=this.__kK;
this._styleBorder=this.__kI;
this._generateMarkup=this.__kJ;
},properties:{innerWidthTop:{check:f,init:0},innerWidthRight:{check:f,init:0},innerWidthBottom:{check:f,init:0},innerWidthLeft:{check:f,init:0},innerWidth:{group:[w,z,n,k],mode:a},innerColorTop:{nullable:true,check:g},innerColorRight:{nullable:true,check:g},innerColorBottom:{nullable:true,check:g},innerColorLeft:{nullable:true,check:g},innerColor:{group:[u,v,x,r],mode:a}},members:{__kH:null,__kI:function(D){{var F=qx.theme.manager.Color.getInstance();
var G=F.resolve(this.getInnerColorTop());
var J=F.resolve(this.getInnerColorRight());
var H=F.resolve(this.getInnerColorBottom());
var I=F.resolve(this.getInnerColorLeft());
};
D.position=t;
var E=this.getInnerWidthTop();

if(E>0){D[e]=E+j+this.getStyleTop()+i+G;
}var E=this.getInnerWidthRight();

if(E>0){D[b]=E+j+this.getStyleRight()+i+J;
}var E=this.getInnerWidthBottom();

if(E>0){D[c]=E+j+this.getStyleBottom()+i+H;
}var E=this.getInnerWidthLeft();

if(E>0){D[d]=E+j+this.getStyleLeft()+i+I;
}},__kJ:function(K){var O=this._generateBackgroundMarkup(K);
{var M=qx.theme.manager.Color.getInstance();
var R=M.resolve(this.getColorTop());
var N=M.resolve(this.getColorRight());
var L=M.resolve(this.getColorBottom());
var Q=M.resolve(this.getColorLeft());
};
K[e]=h;
K[b]=h;
K[c]=h;
K[d]=h;
K[C]=0;
if((qx.core.Environment.get(B)==A&&parseFloat(qx.core.Environment.get(m))<8)||(qx.core.Environment.get(B)==A&&qx.core.Environment.get(q)<8)){K[C]=h;
}var P=this.getWidthTop();

if(P>0){K[e]=P+j+this.getStyleTop()+i+R;
}var P=this.getWidthRight();

if(P>0){K[b]=P+j+this.getStyleRight()+i+N;
}var P=this.getWidthBottom();

if(P>0){K[c]=P+j+this.getStyleBottom()+i+L;
}var P=this.getWidthLeft();

if(P>0){K[d]=P+j+this.getStyleLeft()+i+Q;
}K[l]=s;
K[y]=0;
K[p]=0;
return this.__kH=this._generateBackgroundMarkup(K,O);
},__kK:function(S,T,U){var V=this.getInsets();
T-=V.left+V.right;
U-=V.top+V.bottom;
var W=V.left-this.getWidthLeft()-this.getInnerWidthLeft();
var top=V.top-this.getWidthTop()-this.getInnerWidthTop();
return {left:W,top:top,width:T,height:U,elementToApplyDimensions:S.firstChild};
},__kL:function(){return {top:this.getWidthTop()+this.getInnerWidthTop(),right:this.getWidthRight()+this.getInnerWidthRight(),bottom:this.getWidthBottom()+this.getInnerWidthBottom(),left:this.getWidthLeft()+this.getInnerWidthLeft()};
}}});
})();
(function(){var e="px",d="qx.ui.decoration.Double",c="css.boxmodel",b="content",a="scale";
qx.Class.define(d,{extend:qx.ui.decoration.Abstract,include:[qx.ui.decoration.MBackgroundColor,qx.ui.decoration.MDoubleBorder],construct:function(f,g,h,innerWidth,i){qx.ui.decoration.Abstract.call(this);
if(f!=null){this.setWidth(f);
}
if(g!=null){this.setStyle(g);
}
if(h!=null){this.setColor(h);
}
if(innerWidth!=null){this.setInnerWidth(innerWidth);
}
if(i!=null){this.setInnerColor(i);
}},members:{__kM:null,_getDefaultInsets:function(){return this._getDefaultInsetsForBorder();
},_isInitialized:function(){return !!this.__kM;
},getMarkup:function(j){if(this.__kM){return this.__kM;
}var k={};
this._styleBorder(k);
return this.__kM=this._generateMarkup(k);
},resize:function(l,m,n){var s=this.getBackgroundImage()&&this.getBackgroundRepeat()==a;
var q=this.getInsets();

if(s||qx.core.Environment.get(c)==b){var innerWidth=m-q.left-q.right;
var innerHeight=n-q.top-q.bottom;
}else{var o=q.top-this.getInnerWidthTop();
var t=q.bottom-this.getInnerWidthBottom();
var p=q.left-this.getInnerWidthLeft();
var r=q.right-this.getInnerWidthRight();
var innerWidth=m-p-r;
var innerHeight=n-o-t;
}if(innerWidth<0){innerWidth=0;
}
if(innerHeight<0){innerHeight=0;
}
if(l.firstChild){l.firstChild.style.width=innerWidth+e;
l.firstChild.style.height=innerHeight+e;
}l.style.left=(q.left-this.getWidthLeft()-this.getInnerWidthLeft())+e;
l.style.top=(q.top-this.getWidthTop()-this.getInnerWidthTop())+e;
},tint:function(u,v){this._tintBackgroundColor(u,v,u.style);
}},destruct:function(){this.__kM=null;
}});
})();
(function(){var j='"></div>',i="_applyStyle",h="1px",g='<div style="',f='border:',e="1px solid ",d="Color",c=";",b="px",a='</div>',x="qx.ui.decoration.Beveled",w="css.boxmodel",v='<div style="position:absolute;top:1px;left:1px;',u='border-bottom:',t='border-right:',s="",r="content",q='border-left:',p='border-top:',o="Number",m='<div style="position:absolute;top:1px;left:0px;',n='position:absolute;top:0px;left:1px;',k='<div style="overflow:hidden;font-size:0;line-height:0;">',l="absolute";
qx.Class.define(x,{extend:qx.ui.decoration.Abstract,include:[qx.ui.decoration.MBackgroundImage,qx.ui.decoration.MBackgroundColor],construct:function(y,z,A){qx.ui.decoration.Abstract.call(this);
if(y!=null){this.setOuterColor(y);
}
if(z!=null){this.setInnerColor(z);
}
if(A!=null){this.setInnerOpacity(A);
}},properties:{innerColor:{check:d,nullable:true,apply:i},innerOpacity:{check:o,init:1,apply:i},outerColor:{check:d,nullable:true,apply:i}},members:{__kM:null,_getDefaultInsets:function(){return {top:2,right:2,bottom:2,left:2};
},_isInitialized:function(){return !!this.__kM;
},_applyStyle:function(){},getMarkup:function(){if(this.__kM){return this.__kM;
}var B=qx.theme.manager.Color.getInstance();
var C=[];
var F=e+B.resolve(this.getOuterColor())+c;
var E=e+B.resolve(this.getInnerColor())+c;
C.push(k);
C.push(g);
C.push(f,F);
C.push(qx.bom.element.Opacity.compile(0.35));
C.push(j);
C.push(m);
C.push(q,F);
C.push(t,F);
C.push(qx.bom.element.Opacity.compile(1));
C.push(j);
C.push(g);
C.push(n);
C.push(p,F);
C.push(u,F);
C.push(qx.bom.element.Opacity.compile(1));
C.push(j);
var D={position:l,top:h,left:h,opacity:1};
C.push(this._generateBackgroundMarkup(D));
C.push(v);
C.push(f,E);
C.push(qx.bom.element.Opacity.compile(this.getInnerOpacity()));
C.push(j);
C.push(a);
return this.__kM=C.join(s);
},resize:function(G,H,I){if(H<4){H=4;
}
if(I<4){I=4;
}if(qx.core.Environment.get(w)==r){var outerWidth=H-2;
var outerHeight=I-2;
var O=outerWidth;
var N=outerHeight;
var innerWidth=H-4;
var innerHeight=I-4;
}else{var outerWidth=H;
var outerHeight=I;
var O=H-2;
var N=I-2;
var innerWidth=O;
var innerHeight=N;
}var Q=b;
var M=G.childNodes[0].style;
M.width=outerWidth+Q;
M.height=outerHeight+Q;
var L=G.childNodes[1].style;
L.width=outerWidth+Q;
L.height=N+Q;
var K=G.childNodes[2].style;
K.width=O+Q;
K.height=outerHeight+Q;
var J=G.childNodes[3].style;
J.width=O+Q;
J.height=N+Q;
var P=G.childNodes[4].style;
P.width=innerWidth+Q;
P.height=innerHeight+Q;
},tint:function(R,S){this._tintBackgroundColor(R,S,R.childNodes[3].style);
}},destruct:function(){this.__kM=null;
}});
})();
(function(){var o="Number",n="_applyInsets",m="-l",l="insetRight",k="insetTop",j="_applyBaseImage",i="insetBottom",h="-b",g="set",f="shorthand",c="-t",e="insetLeft",d="String",b="qx.ui.decoration.Grid",a="-r";
qx.Class.define(b,{extend:qx.core.Object,implement:[qx.ui.decoration.IDecorator],construct:function(p,q){qx.core.Object.call(this);

if(qx.ui.decoration.css3.BorderImage.IS_SUPPORTED){this.__kN=new qx.ui.decoration.css3.BorderImage();

if(p){this.__kO(p);
}}else{this.__kN=new qx.ui.decoration.GridDiv(p);
}
if(q!=null){this.__kN.setInsets(q);
}},properties:{baseImage:{check:d,nullable:true,apply:j},insetLeft:{check:o,nullable:true,apply:n},insetRight:{check:o,nullable:true,apply:n},insetBottom:{check:o,nullable:true,apply:n},insetTop:{check:o,nullable:true,apply:n},insets:{group:[k,l,i,e],mode:f}},members:{__kN:null,getMarkup:function(){return this.__kN.getMarkup();
},resize:function(r,s,t){this.__kN.resize(r,s,t);
},tint:function(u,v){},getInsets:function(){return this.__kN.getInsets();
},_applyInsets:function(w,x,name){var y=g+qx.lang.String.firstUp(name);
this.__kN[y](w);
},_applyBaseImage:function(z,A){if(this.__kN instanceof qx.ui.decoration.GridDiv){this.__kN.setBaseImage(z);
}else{this.__kO(z);
}},__kO:function(B){var G,H,J,I;
this.__kN.setBorderImage(B);
var L=qx.util.AliasManager.getInstance().resolve(B);
var M=/(.*)(\.[a-z]+)$/.exec(L);
var K=M[1];
var C=M[2];
var F=qx.util.ResourceManager.getInstance();
var N=F.getImageHeight(K+c+C);
var D=F.getImageWidth(K+a+C);
var E=F.getImageHeight(K+h+C);
var O=F.getImageWidth(K+m+C);
this.__kN.setSlice([N,D,E,O]);
}},destruct:function(){this.__kN=null;
}});
})();
(function(){var j="_applyStyle",i="stretch",h="Integer",g="px",f=" ",e="repeat",d="round",c="shorthand",b="px ",a="sliceBottom",y=";'></div>",x="<div style='",w="sliceLeft",v="sliceRight",u="repeatX",t="String",s="qx.ui.decoration.css3.BorderImage",r="border-box",q="",p='") ',n="sliceTop",o='url("',l="hidden",m="repeatY",k="absolute";
qx.Class.define(s,{extend:qx.ui.decoration.Abstract,construct:function(z,A){qx.ui.decoration.Abstract.call(this);
if(z!=null){this.setBorderImage(z);
}
if(A!=null){this.setSlice(A);
}},statics:{IS_SUPPORTED:qx.bom.element.Style.isPropertySupported("borderImage")},properties:{borderImage:{check:t,nullable:true,apply:j},sliceTop:{check:h,init:0,apply:j},sliceRight:{check:h,init:0,apply:j},sliceBottom:{check:h,init:0,apply:j},sliceLeft:{check:h,init:0,apply:j},slice:{group:[n,v,a,w],mode:c},repeatX:{check:[i,e,d],init:i,apply:j},repeatY:{check:[i,e,d],init:i,apply:j},repeat:{group:[u,m],mode:c}},members:{__kM:null,_getDefaultInsets:function(){return {top:0,right:0,bottom:0,left:0};
},_isInitialized:function(){return !!this.__kM;
},getMarkup:function(){if(this.__kM){return this.__kM;
}var B=this._resolveImageUrl(this.getBorderImage());
var C=[this.getSliceTop(),this.getSliceRight(),this.getSliceBottom(),this.getSliceLeft()];
var D=[this.getRepeatX(),this.getRepeatY()].join(f);
this.__kM=[x,qx.bom.element.Style.compile({"borderImage":o+B+p+C.join(f)+f+D,position:k,lineHeight:0,fontSize:0,overflow:l,boxSizing:r,borderWidth:C.join(b)+g}),y].join(q);
return this.__kM;
},resize:function(E,F,G){E.style.width=F+g;
E.style.height=G+g;
},tint:function(H,I){},_applyStyle:function(){},_resolveImageUrl:function(J){return qx.util.ResourceManager.getInstance().toUri(qx.util.AliasManager.getInstance().resolve(J));
}},destruct:function(){this.__kM=null;
}});
})();
(function(){var j="px",i="0px",h="-1px",g="no-repeat",f="engine.version",e="scale-x",d="scale-y",c="-tr",b="-l",a='</div>',z="scale",y="-br",x="-t",w="browser.quirksmode",v="-tl",u="-r",t='<div style="position:absolute;top:0;left:0;overflow:hidden;font-size:0;line-height:0;">',s="_applyBaseImage",r="-b",q="String",o="",p="-bl",m="qx.ui.decoration.GridDiv",n="-c",k="mshtml",l="engine.name";
qx.Class.define(m,{extend:qx.ui.decoration.Abstract,construct:function(A,B){qx.ui.decoration.Abstract.call(this);
if(A!=null){this.setBaseImage(A);
}
if(B!=null){this.setInsets(B);
}},properties:{baseImage:{check:q,nullable:true,apply:s}},members:{_markup:null,_images:null,_edges:null,_getDefaultInsets:function(){return {top:0,right:0,bottom:0,left:0};
},_isInitialized:function(){return !!this._markup;
},getMarkup:function(){if(this._markup){return this._markup;
}var C=qx.bom.element.Decoration;
var D=this._images;
var E=this._edges;
var F=[];
F.push(t);
F.push(C.create(D.tl,g,{top:0,left:0}));
F.push(C.create(D.t,e,{top:0,left:E.left+j}));
F.push(C.create(D.tr,g,{top:0,right:0}));
F.push(C.create(D.bl,g,{bottom:0,left:0}));
F.push(C.create(D.b,e,{bottom:0,left:E.left+j}));
F.push(C.create(D.br,g,{bottom:0,right:0}));
F.push(C.create(D.l,d,{top:E.top+j,left:0}));
F.push(C.create(D.c,z,{top:E.top+j,left:E.left+j}));
F.push(C.create(D.r,d,{top:E.top+j,right:0}));
F.push(a);
return this._markup=F.join(o);
},resize:function(G,H,I){var J=this._edges;
var innerWidth=H-J.left-J.right;
var innerHeight=I-J.top-J.bottom;
if(innerWidth<0){innerWidth=0;
}
if(innerHeight<0){innerHeight=0;
}G.style.width=H+j;
G.style.height=I+j;
G.childNodes[1].style.width=innerWidth+j;
G.childNodes[4].style.width=innerWidth+j;
G.childNodes[7].style.width=innerWidth+j;
G.childNodes[6].style.height=innerHeight+j;
G.childNodes[7].style.height=innerHeight+j;
G.childNodes[8].style.height=innerHeight+j;

if((qx.core.Environment.get(l)==k)){if(parseFloat(qx.core.Environment.get(f))<7||(qx.core.Environment.get(w)&&parseFloat(qx.core.Environment.get(f))<8)){if(H%2==1){G.childNodes[2].style.marginRight=h;
G.childNodes[5].style.marginRight=h;
G.childNodes[8].style.marginRight=h;
}else{G.childNodes[2].style.marginRight=i;
G.childNodes[5].style.marginRight=i;
G.childNodes[8].style.marginRight=i;
}
if(I%2==1){G.childNodes[3].style.marginBottom=h;
G.childNodes[4].style.marginBottom=h;
G.childNodes[5].style.marginBottom=h;
}else{G.childNodes[3].style.marginBottom=i;
G.childNodes[4].style.marginBottom=i;
G.childNodes[5].style.marginBottom=i;
}}}},tint:function(K,L){},_applyBaseImage:function(M,N){if(M){var R=this._resolveImageUrl(M);
var S=/(.*)(\.[a-z]+)$/.exec(R);
var Q=S[1];
var P=S[2];
var O=this._images={tl:Q+v+P,t:Q+x+P,tr:Q+c+P,bl:Q+p+P,b:Q+r+P,br:Q+y+P,l:Q+b+P,c:Q+n+P,r:Q+u+P};
this._edges=this._computeEdgeSizes(O);
}},_resolveImageUrl:function(T){return qx.util.AliasManager.getInstance().resolve(T);
},_computeEdgeSizes:function(U){var V=qx.util.ResourceManager.getInstance();
return {top:V.getImageHeight(U.t),bottom:V.getImageHeight(U.b),left:V.getImageWidth(U.l),right:V.getImageWidth(U.r)};
}},destruct:function(){this._markup=this._images=this._edges=null;
}});
})();
(function(){var j="border-dark-shadow",i="border-light",h="border-dark",g="border-light-shadow",f="solid",e="gray",d="border-focused-light",c="border-focused-dark",b="border-focused-light-shadow",a="border-focused-dark-shadow",z="border-separator",y="table-header-border",x="dotted",w="tooltip-text",v="invalid",u="white",t="decoration/shadow/shadow.png",s="black",r="#FFF",q="effect",o="table-focus-indicator",p="border-focused-invalid",m="qx/decoration/Classic",n="border-lead",k="decoration/shadow/shadow-small.png",l="qx.theme.classic.Decoration";
qx.Theme.define(l,{aliases:{decoration:m},decorations:{"main":{decorator:qx.ui.decoration.Uniform,style:{width:1,color:h}},"keyboard-focus":{decorator:qx.ui.decoration.Single,style:{width:1,color:s,style:x}},"inset":{decorator:qx.ui.decoration.Double,style:{width:1,innerWidth:1,color:[j,i,i,j],innerColor:[h,g,g,h]}},"outset":{decorator:qx.ui.decoration.Double,style:{width:1,innerWidth:1,color:[g,h,h,g],innerColor:[i,j,j,i]}},"groove":{decorator:qx.ui.decoration.Double,style:{width:1,innerWidth:1,color:[j,i,i,j],innerColor:[i,j,j,i]}},"ridge":{decorator:qx.ui.decoration.Double,style:{width:1,innerWidth:1,color:[i,j,j,i],innerColor:[j,i,i,j]}},"inset-thin":{decorator:qx.ui.decoration.Single,style:{width:1,color:[j,i,i,j]}},"outset-thin":{decorator:qx.ui.decoration.Single,style:{width:1,color:[i,j,j,i]}},"focused-inset":{decorator:qx.ui.decoration.Double,style:{width:1,innerWidth:1,color:[a,d,d,a],innerColor:[c,b,b,c]}},"focused-outset":{decorator:qx.ui.decoration.Double,style:{width:1,innerWidth:1,color:[b,c,c,b],innerColor:[d,a,a,d]}},"border-invalid":{decorator:qx.ui.decoration.Double,style:{width:1,innerWidth:1,color:[j,i,i,j],innerColor:v}},"separator-horizontal":{decorator:qx.ui.decoration.Single,style:{widthLeft:1,colorLeft:z}},"separator-vertical":{decorator:qx.ui.decoration.Single,style:{widthTop:1,colorTop:z}},"shadow":{decorator:qx.ui.decoration.Grid,style:{baseImage:t,insets:[4,8,8,4]}},"shadow-window":{decorator:qx.ui.decoration.Grid,style:{baseImage:t,insets:[4,8,8,4]}},"shadow-small":{decorator:qx.ui.decoration.Grid,style:{baseImage:k,insets:[0,3,3,0]}},"checkbox-invalid-shadow":{decorator:qx.ui.decoration.Beveled,style:{outerColor:v,innerColor:p,insets:[0]}},"lead-item":{decorator:qx.ui.decoration.Uniform,style:{width:1,style:x,color:n}},"tooltip":{decorator:qx.ui.decoration.Uniform,style:{width:1,color:w}},"tooltip-error":{decorator:qx.ui.decoration.Uniform,style:{width:1,color:w}},"toolbar-separator":{decorator:qx.ui.decoration.Single,style:{widthLeft:1,colorLeft:j}},"toolbar-part-handle":{decorator:qx.ui.decoration.Single,style:{width:1,style:f,colorTop:u,colorLeft:u,colorRight:j,colorBottom:j}},"menu-separator":{decorator:qx.ui.decoration.Single,style:{widthTop:1,widthBottom:1,colorTop:h,colorBottom:i}},"datechooser-date-pane":{decorator:qx.ui.decoration.Single,style:{widthTop:1,colorTop:e,style:f}},"datechooser-weekday":{decorator:qx.ui.decoration.Single,style:{widthBottom:1,colorBottom:e,style:f}},"datechooser-week":{decorator:qx.ui.decoration.Single,style:{widthRight:1,colorRight:e,style:f}},"datechooser-week-header":{decorator:qx.ui.decoration.Single,style:{widthBottom:1,colorBottom:e,widthRight:1,colorRight:e,style:f}},"tabview-page-button-top":{decorator:qx.ui.decoration.Double,style:{width:1,color:[g,h,h,g],innerWidth:1,innerColor:[i,j,j,i],widthBottom:0,innerWidthBottom:0}},"tabview-page-button-bottom":{decorator:qx.ui.decoration.Double,style:{width:1,color:[g,h,h,g],innerWidth:1,innerColor:[i,j,j,i],widthTop:0,innerWidthTop:0}},"tabview-page-button-left":{decorator:qx.ui.decoration.Double,style:{width:1,color:[g,h,h,g],innerWidth:1,innerColor:[i,j,j,i],widthRight:0,innerWidthRight:0}},"tabview-page-button-right":{decorator:qx.ui.decoration.Double,style:{width:1,color:[g,h,h,g],innerWidth:1,innerColor:[i,j,j,i],widthLeft:0,innerWidthLeft:0}},"table-statusbar":{decorator:qx.ui.decoration.Single,style:{widthTop:1,colorTop:j,styleTop:f}},"table-scroller-header":{decorator:qx.ui.decoration.Single,style:{widthBottom:1,colorBottom:y,styleBottom:f}},"table-scroller-focus-indicator":{decorator:qx.ui.decoration.Single,style:{width:2,color:o,style:f}},"table-header-cell":{decorator:qx.ui.decoration.Single,style:{widthRight:1,colorRight:y,styleRight:f}},"table-header-cell-hovered":{decorator:qx.ui.decoration.Single,style:{widthRight:1,colorRight:y,styleRight:f,widthBottom:2,colorBottom:q,styleBottom:f}},"progressbar":{decorator:qx.ui.decoration.Single,style:{backgroundColor:r,width:1,color:z}}}});
})();
(function(){var dh="button",dg="widget",df="background",de="atom",dd="inset-thin",dc="text-disabled",db="text-selected",da="outset",cY="label",cX="inset",ca="background-selected",bY="image",bX="groupbox",bW="cell",bV="popup",bU="focused-inset",bT="tooltip",bS="white",bR="menu-button",bQ="middle",dp="decoration/arrows/down.gif",dq="spinner",dm="background-disabled",dn="list",dk="button-hovered",dl="bold",di="checkbox",dj="toolbar-button",dr="button-frame",ds="textfield",cG="background-invalid",cF="shadow-small",cI="invalid",cH="combobox",cK="scrollbar",cJ="center",cM="datechooser/button",cL="button-abandoned",cE="background-light",cD="main",k="date-chooser",l="date-chooser-title",m="radiobutton",n="default",o="tree-folder",p="selectbox",q="background-field",r="outset-thin",s="icon/16/places/folder-open.png",t="menu-slidebar-button",dG="scrollbar/button",dF="combobox/button",dE="decoration/arrows/right.gif",dD="decoration/arrows/up.gif",dK="text",dJ="virtual-list",dI="decoration/arrows/down-small.gif",dH="tree",dM="checkbox-undetermined",dL="icon/16/places/folder.png",bg="slidebar/button-forward",bh="icon/16/mimetypes/text-plain.png",be="right-top",bf="table-header-cell",bk="button-checked",bl=".png",bi="background-focused",bj="datechooser",bc="slidebar/button-backward",bd="treevirtual-folder",L="checkbox-checked",K="decoration/form/",N="decoration/tree/minus.gif",M="",H="decoration/tree/plus.gif",G="-invalid",J="decoration/arrows/left.gif",I="table-row-background-even",F="decoration/treevirtual/cross_minus.gif",E="radiobutton-hovered",bq="keyboard-focus",br="decoration/treevirtual/start_plus.gif",bs="decoration/cursors/",bt="icon/16/actions/dialog-ok.png",bm="slidebar",bn="#BABABA",bo="table-scroller-focus-indicator",bp="move-frame",bu="nodrop",bv="date-chooser-selected",W="tabview-page-button-left",V="decoration/arrows/up-small.gif",U="move",T="radiobutton-checked-focused",S="qx.theme.classic.Appearance",R="decoration/menu/checkbox.gif",Q="tooltip-error",P="right",bb="resize-frame",ba="decoration/arrows/rewind.gif",bw="table-scroller-header",bx="table-pane",by="table-header-cell-hover",bz="focused-outset",bA="checkbox-hovered",bB="icon/16/actions/dialog-cancel.png",bC="menu-slidebar",bD="datechooser-date-pane",bE="background-pane",bF="decoration/treevirtual/cross_plus.gif",ci="qx/icon/Oxygen/16/actions/window-close.png",ch="datechooser-week",cg="icon/16/apps/office-calendar.png",cf="datechooser-weekday",cm="table-header-border",cl="window-active-caption-text",ck="window-active-caption",cj="icon",cp="checkbox-checked-focused",co="toolbar-separator",cz="groove",cA="checkbox-pressed",cx="tooltip-invalid",cy="decoration/window/restore.gif",cv="decoration/menu/checkbox-invert.gif",cw="scrollarea",ct="window-inactive-caption-text",cu="best-fit",cB="up.gif",cC="checkbox-undetermined-hovered",cQ="keep-align",cP="tabview-page-button-right",cS="tabview-page-button-top",cR="tabview-page-button-bottom",cU="row-layer",cT="decoration/menu/radiobutton.gif",cW="decoration/arrows/",cV="decoration/table/descending.png",cO="progressbar",cN="tree-file",dz="tooltip-text",dA="checkbox-checked-hovered",dB="left.gif",dC="decoration/arrows/up-invert.gif",dv="alias",dw="decoration/arrows/right-invert.gif",dx="radiobutton-checked-disabled",dy="lead-item",dt="checkbox-focused",du="border-dark",j="decoration/treevirtual/end_plus.gif",i="decoration/treevirtual/start_minus.gif",h="radiobutton-checked-hovered",g="decoration/window/minimize.gif",f="table-header-cell-hovered",e="down.gif",d="decoration/treevirtual/end.gif",c="decoration/treevirtual/end_minus.gif",b="window-inactive-caption",a="decoration/menu/radiobutton-invert.gif",w="text-placeholder",x="slider",u="decoration/table/select-column-order.png",v="decoration/arrows/next.gif",A="table-header",B="decoration/treevirtual/only_minus.gif",y="datechooser-week-header",z="decoration/window/maximize.gif",C="decoration/treevirtual/only_plus.gif",D="checkbox-checked-pressed",cq="decoration/arrows/down-invert.gif",cn="menu-separator",cs="decoration/splitpane/knob-vertical.png",cr=".gif",cd="decoration/arrows/forward.gif",cb="radiobutton-checked-pressed",O="table-statusbar",ce="radiobutton-pressed",Y="copy",X="table-row-background-selected",bI="radiobutton-focused",bJ="decoration/splitpane/knob-horizontal.png",bK="right.gif",bL="radiobutton-checked",bM="decoration/treevirtual/cross.gif",bN="decoration/table/ascending.png",bO="decoration/treevirtual/line.gif",bP="checkbox-undetermined-focused",bG="toolbar-part-handle",bH="decoration/window/close.gif",cc="icon/16/actions/view-refresh.png";
qx.Theme.define(S,{appearances:{"widget":{},"label":{style:function(dN){return {textColor:dN.disabled?dc:undefined};
}},"image":{style:function(dO){return {opacity:!dO.replacement&&dO.disabled?0.3:undefined};
}},"atom":{},"atom/label":cY,"atom/icon":bY,"root":{style:function(dP){return {backgroundColor:df,textColor:dK,font:n};
}},"popup":{style:function(dQ){return {decorator:cD,backgroundColor:bE,shadow:cF};
}},"tooltip":{include:bV,style:function(dR){return {backgroundColor:bT,textColor:dz,decorator:bT,shadow:cF,padding:[1,3,2,3],offset:[15,5,5,5]};
}},"tooltip/atom":de,"tooltip-error":{include:bT,style:function(dS){return {textColor:db,showTimeout:100,hideTimeout:10000,decorator:Q,font:dl,backgroundColor:cx};
}},"tooltip-error/atom":de,"iframe":{style:function(dT){return {backgroundColor:bS,decorator:cX};
}},"move-frame":{style:function(dU){return {decorator:cD};
}},"resize-frame":bp,"dragdrop-cursor":{style:function(dV){var dW=bu;

if(dV.copy){dW=Y;
}else if(dV.move){dW=U;
}else if(dV.alias){dW=dv;
}return {source:bs+dW+cr,position:be,offset:[2,16,2,6]};
}},"button-frame":{alias:de,style:function(dX){if(dX.pressed||dX.abandoned||dX.checked){var ea=!dX.inner&&dX.focused?bU:cX;
var dY=[4,3,2,5];
}else{var ea=!dX.inner&&dX.focused?bz:da;
var dY=[3,4];
}return {backgroundColor:dX.abandoned?cL:dX.hovered?dk:dX.checked?bk:dh,decorator:ea,padding:dY};
}},"button":{alias:dr,include:dr,style:function(eb){return {center:true};
}},"hover-button":{alias:de,include:de,style:function(ec){return {backgroundColor:ec.hovered?ca:undefined,textColor:ec.hovered?db:undefined};
}},"splitbutton":{},"splitbutton/button":dh,"splitbutton/arrow":{alias:dh,include:dh,style:function(ed){return {icon:dp};
}},"scrollarea/corner":{style:function(){return {backgroundColor:df};
}},"scrollarea":dg,"scrollarea/pane":dg,"scrollarea/scrollbar-x":cK,"scrollarea/scrollbar-y":cK,"list":{alias:cw,style:function(ee){var ei;
var eg=!!ee.focused;
var eh=!!ee.invalid;
var ef=!!ee.disabled;

if(eh&&!ef){ei=cG;
}else if(eg&&!eh&&!ef){ei=bi;
}else if(ef){ei=dm;
}else{ei=bS;
}return {decorator:ee.focused?bU:cX,backgroundColor:ei};
}},"listitem":{alias:de,style:function(ej){return {gap:4,padding:ej.lead?[2,4]:[3,5],backgroundColor:ej.selected?ca:undefined,textColor:ej.selected?db:undefined,decorator:ej.lead?dy:undefined};
}},"form-renderer-label":{include:cY,style:function(){return {paddingTop:4};
}},"textfield":{style:function(ek){var ep;
var en=!!ek.focused;
var eo=!!ek.invalid;
var el=!!ek.disabled;

if(eo&&!el){ep=cG;
}else if(en&&!eo&&!el){ep=bi;
}else if(el){ep=dm;
}else{ep=q;
}var em;

if(ek.disabled){em=dc;
}else if(ek.showingPlaceholder){em=w;
}else{em=undefined;
}return {decorator:ek.focused?bU:cX,padding:[2,3],textColor:em,backgroundColor:ep};
}},"textarea":ds,"checkbox":{alias:de,style:function(eq){var es;
if(eq.checked){if(eq.disabled){es=L;
}else if(eq.focused){es=cp;
}else if(eq.pressed){es=D;
}else if(eq.hovered){es=dA;
}else{es=L;
}}else if(eq.undetermined){if(eq.disabled){es=dM;
}else if(eq.focused){es=bP;
}else if(eq.hovered){es=cC;
}else{es=dM;
}}else if(!eq.disabled){if(eq.focused){es=dt;
}else if(eq.pressed){es=cA;
}else if(eq.hovered){es=bA;
}}es=es||di;
var er=eq.invalid&&!eq.disabled?G:M;
return {icon:K+es+er+bl,gap:6};
}},"radiobutton":{alias:di,include:di,style:function(et){var ev;

if(et.checked&&et.focused){ev=T;
}else if(et.checked&&et.disabled){ev=dx;
}else if(et.checked&&et.pressed){ev=cb;
}else if(et.checked&&et.hovered){ev=h;
}else if(et.checked){ev=bL;
}else if(et.focused){ev=bI;
}else if(et.pressed){ev=ce;
}else if(et.hovered){ev=E;
}else{ev=m;
}var eu=et.invalid&&!et.disabled?G:M;
return {icon:K+ev+eu+bl,shadow:undefined};
}},"spinner":{style:function(ew){return {decorator:ew.focused?bU:cX,textColor:ew.disabled?dc:undefined};
}},"spinner/textfield":{include:ds,style:function(ex){return {decorator:undefined,padding:[2,3]};
}},"spinner/upbutton":{alias:dh,include:dh,style:function(ey){return {icon:V,padding:ey.pressed?[2,2,0,4]:[1,3,1,3],backgroundColor:ey.hovered?dk:dh};
}},"spinner/downbutton":{alias:dh,include:dh,style:function(ez){return {icon:dI,padding:ez.pressed?[2,2,0,4]:[1,3,1,3],backgroundColor:ez.hovered?dk:dh};
}},"datefield":cH,"datefield/button":{alias:dF,include:dF,style:function(eA){return {icon:cg,padding:[0,3],backgroundColor:undefined,decorator:undefined};
}},"datefield/list":{alias:bj,include:bj,style:function(eB){return {decorator:eB.focused?bU:cX};
}},"groupbox":{style:function(eC){return {backgroundColor:df};
}},"groupbox/legend":{alias:de,style:function(eD){return {backgroundColor:df,textColor:eD.invalid?cI:undefined,padding:[1,0,1,4]};
}},"groupbox/frame":{style:function(eE){return {padding:[12,9],marginTop:10,decorator:cz};
}},"check-groupbox":bX,"check-groupbox/legend":{alias:di,include:di,style:function(eF){return {backgroundColor:df,textColor:eF.invalid?cI:undefined,padding:[1,0,1,4]};
}},"radio-groupbox":bX,"radio-groupbox/legend":{alias:m,include:m,style:function(eG){return {backgroundColor:df,textColor:eG.invalid?cI:undefined,padding:[1,0,1,4]};
}},"toolbar":{style:function(eH){return {backgroundColor:df};
}},"toolbar/part":{},"toolbar/part/container":{},"toolbar/part/handle":{style:function(eI){return {decorator:bG,backgroundColor:df,padding:[0,1],margin:[3,2],allowGrowY:true};
}},"toolbar-separator":{style:function(eJ){return {margin:[3,2],decorator:co};
}},"toolbar-button":{alias:de,style:function(eK){if(eK.pressed||eK.checked||eK.abandoned){var eM=dd;
var eL=[3,2,1,4];
}else if(eK.hovered&&!eK.disabled){var eM=r;
var eL=[2,3];
}else{var eM=undefined;
var eL=[3,4];
}return {cursor:n,decorator:eM,padding:eL,backgroundColor:eK.abandoned?cL:eK.checked?cE:dh};
}},"toolbar-menubutton":{alias:dj,include:dj,style:function(eN){return {showArrow:true};
}},"toolbar-menubutton/arrow":{alias:bY,include:bY,style:function(eO){return {source:dI};
}},"toolbar-splitbutton":{},"toolbar-splitbutton/button":dj,"toolbar-splitbutton/arrow":{alias:dj,include:dj,style:function(eP){return {icon:dp};
}},"slidebar":{},"slidebar/scrollpane":{},"slidebar/content":{},"slidebar/button-forward":{alias:dh,include:dh,style:function(eQ){return {icon:eQ.vertical?dp:v};
}},"slidebar/button-backward":{alias:dh,include:dh,style:function(eR){return {icon:eR.vertical?dD:J};
}},"tabview":{},"tabview/bar":{alias:bm,style:function(eS){var eT=0,eW=0,eU=0,eV=0;

if(eS.barTop){eU=-2;
}else if(eS.barBottom){eT=-2;
}else if(eS.barRight){eV=-2;
}else{eW=-2;
}return {marginBottom:eU,marginTop:eT,marginLeft:eV,marginRight:eW};
}},"tabview/bar/button-forward":{include:bg,alias:bg,style:function(eX){if(eX.barTop||eX.barBottom){return {marginTop:2,marginBottom:2};
}else{return {marginLeft:2,marginRight:2};
}}},"tabview/bar/button-backward":{include:bc,alias:bc,style:function(eY){if(eY.barTop||eY.barBottom){return {marginTop:2,marginBottom:2};
}else{return {marginLeft:2,marginRight:2};
}}},"tabview/pane":{style:function(fa){return {backgroundColor:df,decorator:da,padding:10};
}},"tabview-page":dg,"tabview-page/button":{style:function(fb){var fk;
var fi=0,fg=0,fd=0,ff=0;

if(fb.barTop||fb.barBottom){var fe=2,fc=2,fh=6,fj=6;
}else{var fe=6,fc=6,fh=6,fj=6;
}
if(fb.barTop){fk=cS;
}else if(fb.barRight){fk=cP;
}else if(fb.barBottom){fk=cR;
}else{fk=W;
}
if(fb.checked){if(fb.barTop||fb.barBottom){fh+=2;
fj+=2;
}else{fe+=2;
fc+=2;
}}else{if(fb.barTop||fb.barBottom){fd+=2;
fi+=2;
}else if(fb.barLeft||fb.barRight){fg+=2;
ff+=2;
}}
if(fb.checked){if(!fb.firstTab){if(fb.barTop||fb.barBottom){ff=-4;
}else{fi=-4;
}}
if(!fb.lastTab){if(fb.barTop||fb.barBottom){fg=-4;
}else{fd=-4;
}}}return {zIndex:fb.checked?10:5,decorator:fk,backgroundColor:df,padding:[fe,fj,fc,fh],margin:[fi,fg,fd,ff],textColor:fb.disabled?dc:undefined};
}},"tabview-page/button/label":{alias:cY,style:function(fl){return {padding:[0,1,0,1],margin:fl.focused?0:1,decorator:fl.focused?bq:undefined};
}},"tabview-page/button/icon":bY,"tabview-page/button/close-button":{alias:de,style:function(fm){return {icon:ci};
}},"scrollbar":{},"scrollbar/slider":{alias:x,style:function(fn){return {backgroundColor:cE};
}},"scrollbar/slider/knob":{include:dr,style:function(fo){return {height:14,width:14,minHeight:fo.horizontal?undefined:9,minWidth:fo.horizontal?9:undefined};
}},"scrollbar/button":{alias:dh,include:dh,style:function(fp){var fq;

if(fp.up||fp.down){if(fp.pressed||fp.abandoned||fp.checked){fq=[5,2,3,4];
}else{fq=[4,3];
}}else{if(fp.pressed||fp.abandoned||fp.checked){fq=[4,3,2,5];
}else{fq=[3,4];
}}var fr=cW;

if(fp.left){fr+=dB;
}else if(fp.right){fr+=bK;
}else if(fp.up){fr+=cB;
}else{fr+=e;
}return {padding:fq,icon:fr};
}},"scrollbar/button-begin":dG,"scrollbar/button-end":dG,"slider":{style:function(fs){var ft;

if(fs.disabled){ft=dm;
}else if(fs.invalid){ft=cG;
}else if(fs.focused){ft=cE;
}else{ft=q;
}return {backgroundColor:ft,decorator:fs.focused?bU:cX};
}},"slider/knob":{include:dr,style:function(fu){return {width:14,height:14,decorator:da};
}},"tree-folder/open":{style:function(fv){return {source:fv.opened?N:H};
}},"tree-folder":{style:function(fw){return {padding:[2,3,2,0],icon:fw.opened?s:dL,iconOpened:s};
}},"tree-folder/icon":{style:function(fx){return {padding:[0,4,0,0]};
}},"tree-folder/label":{style:function(fy){return {padding:[1,2],backgroundColor:fy.selected?ca:undefined,textColor:fy.selected?db:undefined};
}},"tree-file":{include:o,alias:o,style:function(fz){return {icon:bh};
}},"tree":{include:dn,alias:dn,style:function(fA){return {contentPadding:[4,4,4,4]};
}},"treevirtual":{style:function(fB){return {decorator:cD};
}},"treevirtual-folder":{style:function(fC){return {icon:(fC.opened?s:dL)};
}},"treevirtual-file":{include:bd,alias:bd,style:function(fD){return {icon:bh};
}},"treevirtual-line":{style:function(fE){return {icon:bO};
}},"treevirtual-contract":{style:function(fF){return {icon:N};
}},"treevirtual-expand":{style:function(fG){return {icon:H};
}},"treevirtual-only-contract":{style:function(fH){return {icon:B};
}},"treevirtual-only-expand":{style:function(fI){return {icon:C};
}},"treevirtual-start-contract":{style:function(fJ){return {icon:i};
}},"treevirtual-start-expand":{style:function(fK){return {icon:br};
}},"treevirtual-end-contract":{style:function(fL){return {icon:c};
}},"treevirtual-end-expand":{style:function(fM){return {icon:j};
}},"treevirtual-cross-contract":{style:function(fN){return {icon:F};
}},"treevirtual-cross-expand":{style:function(fO){return {icon:bF};
}},"treevirtual-end":{style:function(fP){return {icon:d};
}},"treevirtual-cross":{style:function(fQ){return {icon:bM};
}},"window":{style:function(fR){return {contentPadding:[10,10,10,10],backgroundColor:df,decorator:fR.maximized?undefined:da,shadow:fR.maximized?undefined:cF};
}},"window-resize-frame":bb,"window/pane":{},"window/captionbar":{style:function(fS){return {padding:1,backgroundColor:fS.active?ck:b,textColor:fS.active?cl:ct};
}},"window/icon":{style:function(fT){return {marginRight:4};
}},"window/title":{style:function(fU){return {cursor:n,font:dl,marginRight:20,alignY:bQ};
}},"window/minimize-button":{include:dh,alias:dh,style:function(fV){return {icon:g,padding:fV.pressed||fV.abandoned?[2,1,0,3]:[1,2]};
}},"window/restore-button":{include:dh,alias:dh,style:function(fW){return {icon:cy,padding:fW.pressed||fW.abandoned?[2,1,0,3]:[1,2]};
}},"window/maximize-button":{include:dh,alias:dh,style:function(fX){return {icon:z,padding:fX.pressed||fX.abandoned?[2,1,0,3]:[1,2]};
}},"window/close-button":{include:dh,alias:dh,style:function(fY){return {marginLeft:2,icon:bH,padding:fY.pressed||fY.abandoned?[2,1,0,3]:[1,2]};
}},"window/statusbar":{style:function(ga){return {decorator:dd,padding:[2,6]};
}},"window/statusbar-text":cY,"resizer":{style:function(gb){return {decorator:da};
}},"splitpane":{},"splitpane/splitter":{style:function(gc){return {backgroundColor:df};
}},"splitpane/splitter/knob":{style:function(gd){return {source:gd.horizontal?bJ:cs,padding:2};
}},"splitpane/slider":{style:function(ge){return {backgroundColor:du,opacity:0.3};
}},"selectbox":{include:dr,style:function(gf){var gg=dh;

if(gf.invalid&&!gf.disabled){gg=cG;
}else if(gf.abandoned){gg=cL;
}else if(!gf.abandoned&&gf.hovered){gg=dk;
}else if(!gf.abandoned&&!gf.hovered&&gf.checked){gg=bk;
}return {backgroundColor:gg};
}},"selectbox/atom":de,"selectbox/popup":bV,"selectbox/list":dn,"selectbox/arrow":{include:bY,style:function(gh){return {source:dp,paddingRight:4,paddingLeft:5};
}},"datechooser":{style:function(gi){return {decorator:da};
}},"datechooser/navigation-bar":{style:function(gj){return {backgroundColor:k,textColor:gj.disabled?dc:gj.invalid?cI:undefined,padding:[2,10]};
}},"datechooser/last-year-button-tooltip":bT,"datechooser/last-month-button-tooltip":bT,"datechooser/next-year-button-tooltip":bT,"datechooser/next-month-button-tooltip":bT,"datechooser/last-year-button":cM,"datechooser/last-month-button":cM,"datechooser/next-year-button":cM,"datechooser/next-month-button":cM,"datechooser/button/icon":{},"datechooser/button":{style:function(gk){var gl={width:17,show:cj};

if(gk.lastYear){gl.icon=ba;
}else if(gk.lastMonth){gl.icon=J;
}else if(gk.nextYear){gl.icon=cd;
}else if(gk.nextMonth){gl.icon=dE;
}
if(gk.pressed||gk.checked||gk.abandoned){gl.decorator=dd;
}else if(gk.hovered){gl.decorator=r;
}else{gl.decorator=undefined;
}
if(gk.pressed||gk.checked||gk.abandoned){gl.padding=[2,0,0,2];
}else if(gk.hovered){gl.padding=1;
}else{gl.padding=2;
}return gl;
}},"datechooser/month-year-label":{style:function(gm){return {font:dl,textAlign:cJ};
}},"datechooser/date-pane":{style:function(gn){return {decorator:bD,backgroundColor:k};
}},"datechooser/weekday":{style:function(go){return {decorator:cf,font:dl,textAlign:cJ,textColor:go.disabled?dc:go.weekend?l:k,backgroundColor:go.weekend?k:l};
}},"datechooser/day":{style:function(gp){return {textAlign:cJ,decorator:gp.today?cD:undefined,textColor:gp.disabled?dc:gp.selected?db:gp.otherMonth?dc:undefined,backgroundColor:gp.disabled?undefined:gp.selected?bv:undefined,padding:[2,4]};
}},"datechooser/week":{style:function(gq){return {textAlign:cJ,textColor:l,padding:[2,4],decorator:gq.header?y:ch};
}},"combobox":{style:function(gr){var gs;

if(gr.disabled){gs=dm;
}else if(gr.invalid){gs=cG;
}else if(gr.focused){gs=cE;
}else{gs=q;
}return {decorator:gr.focused?bU:cX,textColor:gr.disabled?dc:undefined,backgroundColor:gs};
}},"combobox/button":{alias:dh,include:dh,style:function(gt){return {icon:dp,backgroundColor:gt.hovered?dk:dh};
}},"combobox/popup":bV,"combobox/list":dn,"combobox/textfield":{include:ds,style:function(gu){return {decorator:undefined,padding:[2,3],backgroundColor:undefined};
}},"menu":{style:function(gv){var gw={backgroundColor:df,shadow:cF,decorator:da,spacingX:6,spacingY:1,iconColumnWidth:16,arrowColumnWidth:4,padding:1,placementModeY:gv.submenu||gv.contextmenu?cu:cQ};

if(gv.submenu){gw.position=be;
gw.offset=[-2,-3];
}
if(gv.contextmenu){gw.offset=4;
}return gw;
}},"menu/slidebar":bC,"menu-slidebar":dg,"menu-slidebar-button":{style:function(gx){return {backgroundColor:gx.hovered?ca:undefined,padding:6,center:true};
}},"menu-slidebar/button-backward":{include:t,style:function(gy){return {icon:gy.hovered?dC:dD};
}},"menu-slidebar/button-forward":{include:t,style:function(gz){return {icon:gz.hovered?cq:dp};
}},"menu-separator":{style:function(gA){return {height:0,decorator:cn,marginTop:4,marginBottom:4,marginLeft:2,marginRight:2};
}},"menu-button":{alias:de,style:function(gB){return {backgroundColor:gB.selected?ca:undefined,textColor:gB.selected?db:undefined,padding:[2,6]};
}},"menu-button/icon":{include:bY,style:function(gC){return {alignY:bQ};
}},"menu-button/label":{include:cY,style:function(gD){return {alignY:bQ,padding:1};
}},"menu-button/shortcut":{include:cY,style:function(gE){return {alignY:bQ,marginLeft:14,padding:1};
}},"menu-button/arrow":{include:bY,style:function(gF){return {source:gF.selected?dw:dE,alignY:bQ};
}},"menu-checkbox":{alias:bR,include:bR,style:function(gG){return {icon:!gG.checked?undefined:gG.selected?cv:R};
}},"menu-radiobutton":{alias:bR,include:bR,style:function(gH){return {icon:!gH.checked?undefined:gH.selected?a:cT};
}},"menubar":{style:function(gI){return {backgroundColor:df,decorator:da};
}},"menubar-button":{alias:de,style:function(gJ){return {padding:[2,6],backgroundColor:gJ.pressed||gJ.hovered?ca:undefined,textColor:gJ.pressed||gJ.hovered?db:undefined};
}},"colorselector":dg,"colorselector/control-bar":dg,"colorselector/visual-pane":bX,"colorselector/control-pane":dg,"colorselector/preset-grid":dg,"colorselector/colorbucket":{style:function(gK){return {decorator:dd,width:16,height:16};
}},"colorselector/preset-field-set":bX,"colorselector/input-field-set":bX,"colorselector/preview-field-set":bX,"colorselector/hex-field-composite":dg,"colorselector/hex-field":ds,"colorselector/rgb-spinner-composite":dg,"colorselector/rgb-spinner-red":dq,"colorselector/rgb-spinner-green":dq,"colorselector/rgb-spinner-blue":dq,"colorselector/hsb-spinner-composite":dg,"colorselector/hsb-spinner-hue":dq,"colorselector/hsb-spinner-saturation":dq,"colorselector/hsb-spinner-brightness":dq,"colorselector/preview-content-old":{style:function(gL){return {decorator:dd,width:50,height:10};
}},"colorselector/preview-content-new":{style:function(gM){return {decorator:dd,backgroundColor:bS,width:50,height:10};
}},"colorselector/hue-saturation-field":{style:function(gN){return {decorator:dd,margin:5};
}},"colorselector/brightness-field":{style:function(gO){return {decorator:dd,margin:[5,7]};
}},"colorselector/hue-saturation-pane":dg,"colorselector/hue-saturation-handle":dg,"colorselector/brightness-pane":dg,"colorselector/brightness-handle":dg,"table":dg,"table/statusbar":{style:function(gP){return {decorator:O,paddingLeft:2,paddingRight:2};
}},"table/column-button":{alias:dh,style:function(gQ){var gS,gR;

if(gQ.pressed||gQ.checked||gQ.abandoned){gS=dd;
gR=[3,2,1,4];
}else if(gQ.hovered){gS=r;
gR=[2,3];
}else{gS=undefined;
gR=[3,4];
}return {decorator:gS,padding:gR,backgroundColor:gQ.abandoned?cL:dh,icon:u};
}},"table-column-reset-button":{extend:bR,alias:bR,style:function(){return {icon:cc};
}},"table-scroller/scrollbar-x":cK,"table-scroller/scrollbar-y":cK,"table-scroller":dg,"table-scroller/header":{style:function(gT){return {decorator:bw,backgroundColor:A};
}},"table-scroller/pane":{style:function(gU){return {backgroundColor:bx};
}},"table-scroller/focus-indicator":{style:function(gV){return {decorator:bo};
}},"table-scroller/resize-line":{style:function(gW){return {backgroundColor:cm,width:3};
}},"table-header-cell":{alias:de,style:function(gX){return {minWidth:13,paddingLeft:2,paddingRight:2,paddingBottom:gX.hovered?0:2,decorator:gX.hovered?f:bf,backgroundColor:gX.hovered?by:bf,sortIcon:gX.sorted?(gX.sortedAscending?bN:cV):undefined};
}},"table-header-cell/icon":{style:function(gY){return {marginRight:4};
}},"table-header-cell/sort-icon":{style:function(ha){return {alignY:bQ};
}},"table-editor-textfield":{include:ds,style:function(hb){return {decorator:undefined,padding:[2,2]};
}},"table-editor-selectbox":{include:p,alias:p,style:function(hc){return {padding:[0,2]};
}},"table-editor-combobox":{include:cH,alias:cH,style:function(hd){return {decorator:undefined};
}},"colorpopup":{alias:bV,include:bV,style:function(he){return {decorator:da,padding:5,backgroundColor:df};
}},"colorpopup/field":{style:function(hf){return {decorator:dd,margin:2,width:14,height:14,backgroundColor:df};
}},"colorpopup/selector-button":dh,"colorpopup/auto-button":dh,"colorpopup/preview-pane":bX,"colorpopup/current-preview":{style:function(hg){return {height:20,padding:4,marginLeft:4,decorator:dd,allowGrowX:true};
}},"colorpopup/selected-preview":{style:function(hh){return {height:20,padding:4,marginRight:4,decorator:dd,allowGrowX:true};
}},"colorpopup/colorselector-okbutton":{alias:dh,include:dh,style:function(hi){return {icon:bt};
}},"colorpopup/colorselector-cancelbutton":{alias:dh,include:dh,style:function(hj){return {icon:bB};
}},"virtual-list":dn,"virtual-list/row-layer":cU,"row-layer":dg,"column-layer":dg,"group-item":{include:cY,alias:cY,style:function(hk){return {padding:4,backgroundColor:bn,textColor:bS,font:dl};
}},"virtual-selectbox":p,"virtual-selectbox/dropdown":bV,"virtual-selectbox/dropdown/list":{alias:dJ},"virtual-combobox":cH,"virtual-combobox/dropdown":bV,"virtual-combobox/dropdown/list":{alias:dJ},"virtual-tree":{include:dH,alias:dH,style:function(hl){return {itemHeight:21};
}},"virtual-tree-folder":o,"virtual-tree-file":cN,"cell":{style:function(hm){return {backgroundColor:hm.selected?X:I,textColor:hm.selected?db:dK,padding:[3,6]};
}},"cell-string":bW,"cell-number":{include:bW,style:function(hn){return {textAlign:P};
}},"cell-image":bW,"cell-boolean":bW,"cell-atom":bW,"cell-date":bW,"cell-html":bW,"htmlarea":{"include":dg,style:function(ho){return {backgroundColor:bS};
}},"progressbar":{style:function(hp){return {decorator:cO,padding:[1],backgroundColor:bS,width:200,height:20};
}},"progressbar/progress":{style:function(hq){return {backgroundColor:hq.disabled?dm:ca};
}},"app-header":{style:function(hr){return {textColor:db,backgroundColor:ca,padding:[8,12]};
}},"app-header-label":cY}});
})();
(function(){var i="Liberation Sans",h="Verdana",g="Bitstream Vera Sans",f="Lucida Grande",e="Tahoma",d="monospace",c="qx.theme.classic.Font",b="Courier New",a="DejaVu Sans Mono";
qx.Theme.define(c,{fonts:{"default":{size:11,lineHeight:1.4,family:[f,e,h,g,i]},"bold":{size:11,lineHeight:1.4,family:[f,e,h,g,i],bold:true},"small":{size:10,lineHeight:1.4,family:[f,e,h,g,i]},"monospace":{size:11,lineHeight:1.4,family:[a,b,d]}}});
})();
(function(){var j="white",i="black",h="#3E6CA8",g="#EBE9ED",f="#A7A6AA",e="#EEE",d="#F3F0F5",c="gray",b="#85878C",a="#888888",E="#3E5B97",D="#FFFFE1",C="#F3F8FD",B="#CBC8CD",A="#FFE0E0",z="#F4F4F4",y="#808080",x="#CCCCCC",w="#C82C2C",v="#DBEAF9",q="#BCCEE5",r="#A5BDDE",o="#7CA0CF",p="#F6F5F7",m="#FF9999",n="qx.theme.classic.Color",k="#990000",l="#F9F8E9",s="#DCDFE4",t="#FAFBFE",u="#AAAAAA";
qx.Theme.define(n,{colors:{"background":g,"background-light":d,"background-focused":C,"background-focused-inner":v,"background-disabled":z,"background-selected":h,"background-field":j,"background-pane":t,"background-invalid":A,"border-lead":a,"border-light":j,"border-light-shadow":s,"border-dark-shadow":f,"border-dark":b,"border-main":b,"border-focused-light":q,"border-focused-light-shadow":r,"border-focused-dark-shadow":o,"border-focused-dark":h,"border-separator":y,"invalid":k,"border-focused-invalid":m,"text":i,"text-disabled":f,"text-selected":j,"text-focused":E,"text-placeholder":B,"tooltip":D,"tooltip-text":i,"tooltip-invalid":w,"button":g,"button-hovered":p,"button-abandoned":l,"button-checked":d,"window-active-caption-text":[255,255,255],"window-inactive-caption-text":[255,255,255],"window-active-caption":[51,94,168],"window-inactive-caption":[111,161,217],"date-chooser":j,"date-chooser-title":[116,116,116],"date-chooser-selected":[52,52,52],"effect":[254,200,60],"table-pane":j,"table-header":[242,242,242],"table-header-border":[214,213,217],"table-header-cell":[235,234,219],"table-header-cell-hover":[255,255,255],"table-focus-indicator":[179,217,255],"table-row-background-focused-selected":[90,138,211],"table-row-background-focused":[221,238,255],"table-row-background-selected":[51,94,168],"table-row-background-even":[250,248,243],"table-row-background-odd":[255,255,255],"table-row-selected":[255,255,255],"table-row":[0,0,0],"table-row-line":e,"table-column-line":e,"progressive-table-header":u,"progressive-table-row-background-even":[250,248,243],"progressive-table-row-background-odd":[255,255,255],"progressive-progressbar-background":c,"progressive-progressbar-indicator-done":x,"progressive-progressbar-indicator-undone":j,"progressive-progressbar-percent-background":c,"progressive-progressbar-percent-text":j}});
})();
(function(){var c="Oxygen",b="qx.theme.icon.Oxygen",a="qx/icon/Oxygen";
qx.Theme.define(b,{title:c,aliases:{"icon":a}});
})();
(function(){var b="Classic Windows",a="qx.theme.Classic";
qx.Theme.define(a,{title:b,meta:{color:qx.theme.classic.Color,decoration:qx.theme.classic.Decoration,font:qx.theme.classic.Font,appearance:qx.theme.classic.Appearance,icon:qx.theme.icon.Oxygen}});
})();
(function(){var k='#bfbfbf',j="execute",i="middle",h="right",g="resize",f="Ok",d="promptMsgBox-Button",c="16/actions/dialog-ok.png",b="focusout",a="button",O="",N="</i></td></tr></table>",M="<br /><table width='100%' style='font-size:1.0em'><tr><td><i>",L="</td></tr></table>",K="32/status/dialog-error.png",J="default",I="icon/16/actions/dialog-ok.png",H="22/actions/dialog-apply.png",G="Error",F="Cancel",r="No",s="<br /><b>Detail: ",p="Question",q="Problem closing msgBox during focusOut removal",n="track.msgbox.MsgBox",o="</b><br /><br /><table width='100%' style='font-size:1.0em'><tr><td><i>",l="<br /><b>",m="title",t="32/status/dialog-information.png",u="</b>",x="Yes",w="22/actions/dialog-cancel.png",z="Info",y="32/question_mark.png",B="<table width='560px' style='font-size:1.1em'><tr><td>",A="16/actions/dialog-cancel.png",v="infoMsgBox",E="Watchee Form",D="errMsgBox-Button",C="32/status/dialog-warning.png";
theCurrentMsgBox=null;
qx.Class.define(n,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(P){qx.core.Object.call(this);
this.trackGui=P;
this.focusOutHandle=null;
},members:{askMsgBox:function(Q,R,S,T,U,V,W){var V=V||null;
var W=W||null;
var Q=org.xmlBlaster.util.isFilled(Q)?Q:this.trc(m,p);
var S=org.xmlBlaster.util.isDefined(S)?S:null;
this.trackGui.getMyRoot().set({blockerColor:k,blockerOpacity:0.4});
var bb=new qx.ui.window.Window(Q);
bb.setLayout(new qx.ui.layout.VBox());
bb.setModal(true);
bb.setShowClose(false);
bb.setMaxWidth(640);
bb.setMaxHeight(480);
bb.setAllowMaximize(false);
bb.setAllowMinimize(false);
bb.addListener(g,bb.center);
this.trackGui.getMyRoot().add(bb);
var bd=new qx.ui.layout.HBox().set({spacing:10,alignX:h,alignY:i});
var ba=new qx.ui.container.Composite(bd).set({paddingTop:10});
bb.add(ba);
var bg=new qx.ui.basic.Image(xbGetIcon(y));
ba.add(bg);
var bf=new qx.ui.basic.Label().set({value:R,rich:true,width:280});
ba.add(bf);
var be=new qx.ui.layout.HBox().set({spacing:4,alignX:h});
var X=new qx.ui.container.Composite(be).set({paddingTop:11});
bb.add(X);

if(V==null){V=this.trc(a,x);
}var Y=new qx.ui.form.Button(V,xbGetQxIcon(H));
Y.addState(J);
Y.addListener(j,function(e){this.trackGui.getMyRoot().set({blockerColor:k,blockerOpacity:0.0});

if(S!=null){S.call(T,true,U);
}bb.close();
},this);
X.add(Y);

if(W==null){W=this.trc(a,r);
}var bc=new qx.ui.form.Button(W,xbGetQxIcon(w));
bc.addListener(j,function(e){this.trackGui.getMyRoot().set({blockerColor:k,blockerOpacity:0.0});

if(S!=null){S.call(T,false,U);
}bb.close();
},this);
X.add(bc);
bb.open();
return bb;
},errorMsgBox:function(bh,bi){this.trackGui.stopAjaxAnimator();
this.trackGui.getMyRoot().set({blockerColor:k,blockerOpacity:0.6});
var bh=org.xmlBlaster.util.isDefined(bh)?bh:O;
var bp=null;
var br=O;

if(org.xmlBlaster.util.isDefined(bi)){if(bi.constructor==org.xmlBlaster.util.XmlBlasterException){if(false){bp=l+bi.getErrorCodeStr()+o+bi.getMessage()+N;
}else{bp=s+bi.getErrorCodeStr()+u;
br=bi.getMessage();
}}else{bp=M+bi+N;
}}this.error(bh+" "+bp+" "+br);
var bl=640;
var bn=10;
var bj=640-2*bn;
var bt=new qx.ui.window.Window(G);
bt.setLayout(new qx.ui.layout.VBox());
bt.setModal(true);
bt.setShowClose(true);
bt.setMaxWidth(bl);
bt.setMaxHeight(700);
bt.setAllowMaximize(false);
bt.setAllowMinimize(false);
bt.addListener(g,bt.center);
this.trackGui.getMyRoot().add(bt);
var bo=new qx.ui.layout.HBox().set({spacing:bn,alignY:i});
var bm=new qx.ui.container.Composite(bo);
bm.setMaxWidth(bj);
bt.add(bm);
bm.add(new qx.ui.basic.Image(xbGetQxIcon(K)));
bh=B+bh+L;
var bs=new qx.ui.basic.Label().set({width:bj,maxWidth:bj,rich:true,value:bh});
bm.add(bs);

if(bp!=null){var bu=new qx.ui.layout.HBox().set({spacing:bn,alignY:i});
var bq=new qx.ui.container.Composite(bu);
bq.setMaxWidth(bj);
bt.add(bq);
bq.add(new qx.ui.basic.Label().set({value:bp,rich:true,width:bj,maxWidth:bj}));
}var bv=new qx.ui.layout.HBox().set({spacing:4,alignX:h});
var bk=new qx.ui.container.Composite(bv).set({paddingTop:11});
bk.setMaxWidth(bj);
bt.add(bk);
var bw=new qx.ui.form.Button(this.trc(D,f),xbGetQxIcon(c));
bw.addListener(j,function(e){if(theCurrentMsgBox==bt){theCurrentMsgBox=null;
}this.trackGui.getMyRoot().set({blockerColor:k,blockerOpacity:0.0});
bt.close();
},this);
bk.add(bw);
this.focusOutHandle=bt.addListener(b,function(e){this.info("errorMsgBox got focusout");

if(theCurrentMsgBox==bt){bt.open();
}},this);
bt.open();
return bt;
},infoMsgBox:function(bx,by,bz,bA){var bA=bA||null;

if(bA==null)bA=xbGetQxIcon(t);
var by=org.xmlBlaster.util.toNumber(by);
var bD=new qx.ui.window.Window(z);
theCurrentMsgBox=bD;
bD.setLayout(new qx.ui.layout.VBox());
var bG=org.xmlBlaster.util.toBoolean(bz,true);
bD.setModal(bG);
bD.setShowClose(false);
bD.setWidth(300);
bD.setMaxWidth(900);
bD.setMaxHeight(700);
bD.setAllowMaximize(false);
bD.setAllowMinimize(false);

if(bG)this.trackGui.getMyRoot().set({blockerColor:k,blockerOpacity:0.4});
bD.addListener(g,bD.center);
bD.setZIndex(2000000);
this.trackGui.getMyRoot().add(bD);
var bF=new qx.ui.layout.HBox().set({spacing:10,alignY:i});
var bC=new qx.ui.container.Composite(bF);
bD.add(bC);
bC.add(new qx.ui.basic.Image(bA));
var bE=new qx.ui.basic.Label().set({value:bx,rich:true});
bE.setMaxWidth(bD.getMaxWidth()-120);
bE.setMaxHeight(bD.getMaxHeight()-40);
bC.add(bE);
var bH=new qx.ui.layout.HBox().set({spacing:4,alignX:h});
var bB=new qx.ui.container.Composite(bH).set({paddingTop:11});
bD.add(bB);
var bI=new qx.ui.form.Button(this.trc(v,f),xbGetQxIcon(c));
bI.addListener(j,function(e){if(theCurrentMsgBox==bD){theCurrentMsgBox=null;
}
if(bG)this.trackGui.getMyRoot().set({blockerColor:k,blockerOpacity:0.0});
bD.close();
},this);
bI.setZIndex(9);
bI.focus();
bB.add(bI);
this.focusOutHandle=bD.addListener(b,function(e){if(theCurrentMsgBox==bD){bD.open();
}},this);
bD.open();
if(by>0){qx.event.Timer.once(this.__kP,bD,by);
}return bD;
},closeCurrentWindow:function(){if(theCurrentMsgBox==null){return;
}theCurrentMsgBox.info("Calling closeCurrentWindow()");
if(this.focusOutHandle!=null){try{theCurrentMsgBox.removeListenerById(this.focusOutHandle);
this.focusOutHandle=null;
}catch(bJ){this.trackGui.errorMsgBoxDeveloper(q,bJ);
}this.focusOutHandle=null;
}theCurrentMsgBox.close();
theCurrentMsgBox=null;
},__kP:function(){var bK=this;

if(theCurrentMsgBox==bK)theCurrentMsgBox=null;
bK.info("Calling __closeWm2");
if(this.focusOutHandle!=null){bK.removeListenerById(this.focusOutHandle);
this.focusOutHandle=null;
}bK.close();
},promptMsgBox:function(bL,bM,bN,bO,bP,bQ,bR,bS){var bL=org.xmlBlaster.util.isFilled(bL)?bL:E;
var bQ=org.xmlBlaster.util.isDefined(bQ)?bQ:null;
this.trackGui.getMyRoot().set({blockerColor:k,blockerOpacity:0.4});
var bV=new qx.ui.window.Window(bL);
bV.setLayout(new qx.ui.layout.VBox(10));
bV.setModal(true);
bV.setShowClose(false);
bV.setMaxWidth(480);
bV.setMaxHeight(400);
bV.setAllowMaximize(false);
bV.setAllowMinimize(false);
bV.addListener(g,bV.center);
this.trackGui.getMyRoot().add(bV);
var bX=new qx.ui.layout.HBox().set({spacing:10,alignY:i});
var bU=new qx.ui.container.Composite(bX);
bV.add(bU);
bU.add(new qx.ui.basic.Image(xbGetQxIcon(C)));
bU.add(new qx.ui.basic.Label().set({value:bM,rich:true}));
var bW=new qx.ui.form.TextField(bN);

with(bW){setPadding(5);
setPaddingRight(15);
setReadOnly(false);
}bV.add(bW);
var bY=new qx.ui.layout.HBox().set({spacing:4,alignX:h});
var bT=new qx.ui.container.Composite(bY).set({paddingTop:11});
bV.add(bT);
var cb=new qx.ui.form.Button(this.trc(d,f),I);
var ca=new qx.ui.form.Button(this.trc(d,F),xbGetQxIcon(A));
cb.addListener(j,function(e){this.trackGui.getMyRoot().set({blockerColor:k,blockerOpacity:0.0});

if(bQ!=null){if(bW.getValue().length<bO)return;
bQ.call(bR,true,bW.getValue(),bS);
}bV.close();
},this);
bT.add(cb);
ca.addListener(j,function(e){this.trackGui.getMyRoot().set({blockerColor:k,blockerOpacity:0.0});

if(bQ!=null){bQ.call(bR,false,bW.getValue(),bS);
}bV.close();
},this);

if(bP)bT.add(ca);
bV.open();
return bV;
}},destruct:function(){this._disposeFields();
this._disposeObjects();
}});
})();
(function(){var a="qx.ui.window.IWindowManager";
qx.Interface.define(a,{members:{setDesktop:function(b){this.assertInterface(b,qx.ui.window.IDesktop);
},changeActiveWindow:function(c,d){},updateStack:function(){},bringToFront:function(e){this.assertInstance(e,qx.ui.window.Window);
},sendToBack:function(f){this.assertInstance(f,qx.ui.window.Window);
}}});
})();
(function(){var a="qx.ui.window.IDesktop";
qx.Interface.define(a,{members:{setWindowManager:function(b){this.assertInterface(b,qx.ui.window.IWindowManager);
},getWindows:function(){},supportsMaximize:function(){},blockContent:function(c){this.assertInteger(c);
},unblockContent:function(){},isContentBlocked:function(){}}});
})();
(function(){var b="__kQ",a="qx.ui.window.Manager";
qx.Class.define(a,{extend:qx.core.Object,implement:qx.ui.window.IWindowManager,members:{__kQ:null,setDesktop:function(c){this.__kQ=c;
this.updateStack();
},getDesktop:function(){return this.__kQ;
},changeActiveWindow:function(d,e){if(d){this.bringToFront(d);
d.setActive(true);
}
if(e){e.resetActive();
}},_minZIndex:1e5,updateStack:function(){qx.ui.core.queue.Widget.add(this);
},syncWidget:function(){this.__kQ.forceUnblockContent();
var f=this.__kQ.getWindows();
var h=this._minZIndex;
var m=h+f.length*2;
var j=h+f.length*4;
var k=null;

for(var i=0,l=f.length;i<l;i++){var g=f[i];
if(!g.isVisible()){continue;
}k=k||g;
if(g.isModal()){g.setZIndex(j);
this.__kQ.blockContent(j-1);
j+=2;
k=g;
}else if(g.isAlwaysOnTop()){g.setZIndex(m);
m+=2;
}else{g.setZIndex(h);
h+=2;
}if(!k.isModal()&&g.isActive()||g.getZIndex()>k.getZIndex()){k=g;
}}this.__kQ.setActiveWindow(k);
},bringToFront:function(n){var o=this.__kQ.getWindows();
var p=qx.lang.Array.remove(o,n);

if(p){o.push(n);
this.updateStack();
}},sendToBack:function(q){var r=this.__kQ.getWindows();
var s=qx.lang.Array.remove(r,q);

if(s){r.unshift(q);
this.updateStack();
}}},destruct:function(){this._disposeObjects(b);
}});
})();
(function(){var l="move",k="Boolean",j="__kR",i="mouseup",h="mousedown",g="__kS",f="losecapture",d="qx.ui.core.MMovable",c="mousemove",b="maximized",a="move-frame";
qx.Mixin.define(d,{properties:{movable:{check:k,init:true},useMoveFrame:{check:k,init:false}},members:{__kR:null,__kS:null,__kT:null,__kU:null,__kV:null,__kW:null,__kX:null,__kY:false,__la:null,__lb:0,_activateMoveHandle:function(m){if(this.__kR){throw new Error("The move handle could not be redefined!");
}this.__kR=m;
m.addListener(h,this._onMoveMouseDown,this);
m.addListener(i,this._onMoveMouseUp,this);
m.addListener(c,this._onMoveMouseMove,this);
m.addListener(f,this.__lf,this);
},__lc:function(){var n=this.__kS;

if(!n){n=this.__kS=new qx.ui.core.Widget();
n.setAppearance(a);
n.exclude();
qx.core.Init.getApplication().getRoot().add(n);
}return n;
},__ld:function(){var location=this.getContainerLocation();
var p=this.getBounds();
var o=this.__lc();
o.setUserBounds(location.left,location.top,p.width,p.height);
o.show();
o.setZIndex(this.getZIndex()+1);
},__le:function(e){var r=this.__kT;
var u=Math.max(r.left,Math.min(r.right,e.getDocumentLeft()));
var t=Math.max(r.top,Math.min(r.bottom,e.getDocumentTop()));
var q=this.__kU+u;
var s=this.__kV+t;
return {viewportLeft:q,viewportTop:s,parentLeft:q-this.__kW,parentTop:s-this.__kX};
},_onMoveMouseDown:function(e){if(!this.getMovable()||this.hasState(b)){return;
}var parent=this.getLayoutParent();
var w=parent.getContentLocation();
var x=parent.getBounds();
if(qx.Class.implementsInterface(parent,qx.ui.window.IDesktop)){if(!parent.isContentBlocked()){this.__la=parent.getBlockerColor();
this.__lb=parent.getBlockerOpacity();
parent.setBlockerColor(null);
parent.setBlockerOpacity(1);
parent.blockContent(this.getZIndex()-1);
this.__kY=true;
}}this.__kT={left:w.left,top:w.top,right:w.left+x.width,bottom:w.top+x.height};
var v=this.getContainerLocation();
this.__kW=w.left;
this.__kX=w.top;
this.__kU=v.left-e.getDocumentLeft();
this.__kV=v.top-e.getDocumentTop();
this.addState(l);
this.__kR.capture();
if(this.getUseMoveFrame()){this.__ld();
}e.stop();
},_onMoveMouseMove:function(e){if(!this.hasState(l)){return;
}var y=this.__le(e);

if(this.getUseMoveFrame()){this.__lc().setDomPosition(y.viewportLeft,y.viewportTop);
}else{this.setDomPosition(y.parentLeft,y.parentTop);
}e.stopPropagation();
},_onMoveMouseUp:function(e){if(!this.hasState(l)){return;
}this.removeState(l);
var parent=this.getLayoutParent();

if(qx.Class.implementsInterface(parent,qx.ui.window.IDesktop)){if(this.__kY){parent.unblockContent();
parent.setBlockerColor(this.__la);
parent.setBlockerOpacity(this.__lb);
this.__la=null;
this.__lb=0;
this.__kY=false;
}}this.__kR.releaseCapture();
var z=this.__le(e);
this.setLayoutProperties({left:z.parentLeft,top:z.parentTop});
if(this.getUseMoveFrame()){this.__lc().exclude();
}e.stopPropagation();
},__lf:function(e){if(!this.hasState(l)){return;
}this.removeState(l);
if(this.getUseMoveFrame()){this.__lc().exclude();
}}},destruct:function(){this._disposeObjects(g,j);
this.__kT=null;
}});
})();
(function(){var l="indexOf",k="addAfter",j="add",i="addBefore",h="_",g="addAt",f="hasChildren",e="removeAt",d="removeAll",c="getChildren",a="remove",b="qx.ui.core.MRemoteChildrenHandling";
qx.Mixin.define(b,{members:{__lg:function(m,n,o,p){var q=this.getChildrenContainer();

if(q===this){m=h+m;
}return (q[m])(n,o,p);
},getChildren:function(){return this.__lg(c);
},hasChildren:function(){return this.__lg(f);
},add:function(r,s){return this.__lg(j,r,s);
},remove:function(t){return this.__lg(a,t);
},removeAll:function(){return this.__lg(d);
},indexOf:function(u){return this.__lg(l,u);
},addAt:function(v,w,x){this.__lg(g,v,w,x);
},addBefore:function(y,z,A){this.__lg(i,y,z,A);
},addAfter:function(B,C,D){this.__lg(k,B,C,D);
},removeAt:function(E){return this.__lg(e,E);
}}});
})();
(function(){var p="Integer",o="_applyContentPadding",n="resetPaddingRight",m="setPaddingBottom",l="resetPaddingTop",k="qx.ui.core.MContentPadding",j="resetPaddingLeft",i="setPaddingTop",h="setPaddingRight",g="resetPaddingBottom",c="contentPaddingLeft",f="setPaddingLeft",e="contentPaddingTop",b="shorthand",a="contentPaddingRight",d="contentPaddingBottom";
qx.Mixin.define(k,{properties:{contentPaddingTop:{check:p,init:0,apply:o,themeable:true},contentPaddingRight:{check:p,init:0,apply:o,themeable:true},contentPaddingBottom:{check:p,init:0,apply:o,themeable:true},contentPaddingLeft:{check:p,init:0,apply:o,themeable:true},contentPadding:{group:[e,a,d,c],mode:b,themeable:true}},members:{__lh:{contentPaddingTop:i,contentPaddingRight:h,contentPaddingBottom:m,contentPaddingLeft:f},__li:{contentPaddingTop:l,contentPaddingRight:n,contentPaddingBottom:g,contentPaddingLeft:j},_applyContentPadding:function(q,r,name){var s=this._getContentPaddingTarget();

if(q==null){var t=this.__li[name];
s[t]();
}else{var u=this.__lh[name];
s[u](q);
}}}});
})();
(function(){var k="Boolean",j="resize",i="mousedown",h="w-resize",g="sw-resize",f="n-resize",d="resizableRight",c="ne-resize",b="se-resize",a="Integer",z="e-resize",y="resizableLeft",x="mousemove",w="move",v="shorthand",u="maximized",t="nw-resize",s="mouseout",r="qx.ui.core.MResizable",q="mouseup",o="losecapture",p="resize-frame",m="resizableBottom",n="s-resize",l="resizableTop";
qx.Mixin.define(r,{construct:function(){var A=this.getContainerElement();
A.addListener(i,this.__lw,this,true);
A.addListener(q,this.__lx,this);
A.addListener(x,this.__lz,this);
A.addListener(s,this.__lA,this);
A.addListener(o,this.__ly,this);
var B=this.getContainerElement().getDomElement();

if(B==null){B=window;
}this.__lj=qx.event.Registration.getManager(B).getHandler(qx.event.handler.DragDrop);
},properties:{resizableTop:{check:k,init:true},resizableRight:{check:k,init:true},resizableBottom:{check:k,init:true},resizableLeft:{check:k,init:true},resizable:{group:[l,d,m,y],mode:v},resizeSensitivity:{check:a,init:5},useResizeFrame:{check:k,init:true}},members:{__lj:null,__lk:null,__ll:null,__lm:null,__ln:null,__lo:null,__lp:null,RESIZE_TOP:1,RESIZE_BOTTOM:2,RESIZE_LEFT:4,RESIZE_RIGHT:8,_getResizeFrame:function(){var C=this.__lk;

if(!C){C=this.__lk=new qx.ui.core.Widget();
C.setAppearance(p);
C.exclude();
qx.core.Init.getApplication().getRoot().add(C);
}return C;
},__lq:function(){var location=this.__lt();
var D=this._getResizeFrame();
D.setUserBounds(location.left,location.top,location.right-location.left,location.bottom-location.top);
D.show();
D.setZIndex(this.getZIndex()+1);
},__lr:function(e){var F=this.__ll;
var G=this.getSizeHint();
var K=this.__lp;
var J=this.__lo;
var E=J.width;
var I=J.height;
var H=J.containerWidth;
var M=J.containerHeight;
var N=J.left;
var top=J.top;
var L;

if((F&this.RESIZE_TOP)||(F&this.RESIZE_BOTTOM)){L=Math.max(K.top,Math.min(K.bottom,e.getDocumentTop()))-this.__ln;

if(F&this.RESIZE_TOP){I-=L;
M-=L;
}else{I+=L;
M+=L;
}
if(M<G.minHeight){I+=(G.minHeight-M);
M=G.minHeight;
}else if(M>G.maxHeight){I-=(M-G.maxHeight);
M=G.maxHeight;
}
if(F&this.RESIZE_TOP){top+=J.containerHeight-M;
}}
if((F&this.RESIZE_LEFT)||(F&this.RESIZE_RIGHT)){L=Math.max(K.left,Math.min(K.right,e.getDocumentLeft()))-this.__lm;

if(F&this.RESIZE_LEFT){E-=L;
H-=L;
}else{E+=L;
H+=L;
}
if(H<G.minWidth){E+=(G.minWidth-H);
H=G.minWidth;
}else if(E>G.maxWidth){E-=(H-G.maxWidth);
H=G.maxWidth;
}
if(F&this.RESIZE_LEFT){N+=J.containerWidth-H;
}}return {viewportLeft:N,viewportTop:top,parentLeft:J.bounds.left+N-J.left,parentTop:J.bounds.top+top-J.top,containerWidth:H,containerHeight:M,width:E,height:I};
},__ls:{1:f,2:n,4:h,8:z,5:t,6:g,9:c,10:b},__lt:function(){var O=this.getDecoratorElement();
if(O&&O.getDomElement()){return qx.bom.element.Location.get(O.getDomElement());
}else{return this.getContentLocation();
}},__lu:function(e){var location=this.__lt();
var P=this.getResizeSensitivity();
var S=e.getDocumentLeft();
var R=e.getDocumentTop();
var Q=this.__lv(location,S,R,P);
if(Q>0){Q=Q|this.__lv(location,S,R,P*2);
}this.__ll=Q;
},__lv:function(location,T,U,V){var W=0;
if(this.getResizableTop()&&Math.abs(location.top-U)<V&&T>location.left-V&&T<location.right+V){W+=this.RESIZE_TOP;
}else if(this.getResizableBottom()&&Math.abs(location.bottom-U)<V&&T>location.left-V&&T<location.right+V){W+=this.RESIZE_BOTTOM;
}if(this.getResizableLeft()&&Math.abs(location.left-T)<V&&U>location.top-V&&U<location.bottom+V){W+=this.RESIZE_LEFT;
}else if(this.getResizableRight()&&Math.abs(location.right-T)<V&&U>location.top-V&&U<location.bottom+V){W+=this.RESIZE_RIGHT;
}return W;
},__lw:function(e){if(!this.__ll){return;
}this.addState(j);
this.__lm=e.getDocumentLeft();
this.__ln=e.getDocumentTop();
var bb=this.getContainerLocation();
var X=this.__lt();
var ba=this.getBounds();
this.__lo={top:X.top,left:X.left,containerWidth:bb.right-bb.left,containerHeight:bb.bottom-bb.top,width:X.right-X.left,height:X.bottom-X.top,bounds:qx.lang.Object.clone(ba)};
var parent=this.getLayoutParent();
var bc=parent.getContentLocation();
var Y=parent.getBounds();
this.__lp={left:bc.left,top:bc.top,right:bc.left+Y.width,bottom:bc.top+Y.height};
if(this.getUseResizeFrame()){this.__lq();
}this.capture();
e.stop();
},__lx:function(e){if(!this.hasState(j)){return;
}if(this.getUseResizeFrame()){this._getResizeFrame().exclude();
}var bd=this.__lr(e);
this.setWidth(bd.containerWidth);
this.setHeight(bd.containerHeight);
if(this.getResizableLeft()||this.getResizableTop()){this.setLayoutProperties({left:bd.parentLeft,top:bd.parentTop});
}this.__ll=0;
this.removeState(j);
this.resetCursor();
this.getApplicationRoot().resetGlobalCursor();
this.releaseCapture();
e.stopPropagation();
},__ly:function(e){if(!this.__ll){return;
}this.resetCursor();
this.getApplicationRoot().resetGlobalCursor();
this.removeState(w);
if(this.getUseResizeFrame()){this._getResizeFrame().exclude();
}},__lz:function(e){if(this.hasState(j)){var bh=this.__lr(e);
if(this.getUseResizeFrame()){var bf=this._getResizeFrame();
bf.setUserBounds(bh.viewportLeft,bh.viewportTop,bh.width,bh.height);
}else{this.setWidth(bh.containerWidth);
this.setHeight(bh.containerHeight);
if(this.getResizableLeft()||this.getResizableTop()){this.setLayoutProperties({left:bh.parentLeft,top:bh.parentTop});
}}e.stopPropagation();
}else if(!this.hasState(u)&&!this.__lj.isSessionActive()){this.__lu(e);
var bi=this.__ll;
var bg=this.getApplicationRoot();

if(bi){var be=this.__ls[bi];
this.setCursor(be);
bg.setGlobalCursor(be);
}else if(this.getCursor()){this.resetCursor();
bg.resetGlobalCursor();
}}},__lA:function(e){if(this.getCursor()&&!this.hasState(j)){this.resetCursor();
this.getApplicationRoot().resetGlobalCursor();
}}},destruct:function(){if(this.__lk!=null&&!qx.core.ObjectRegistry.inShutDown){this.__lk.destroy();
this.__lk=null;
}this.__lj=null;
}});
})();
(function(){var a="qx.ui.core.MRemoteLayoutHandling";
qx.Mixin.define(a,{members:{setLayout:function(b){return this.getChildrenContainer().setLayout(b);
},getLayout:function(){return this.getChildrenContainer().getLayout();
}}});
})();
(function(){var k="Boolean",j="qx.event.type.Event",i="captionbar",h="_applyCaptionBarChange",g="maximize-button",f="restore-button",d="minimize-button",c="close-button",b="maximized",a="execute",S="title",R="icon",Q="showStatusbar",P="pane",O="statusbar",N="statusbar-text",M="String",L="normal",K="active",J="beforeClose",r="beforeMinimize",s="mousedown",p="window-resize-frame",q="changeStatus",n="changeIcon",o="excluded",l="dblclick",m="_applyActive",t="beforeRestore",u="minimize",B="changeModal",z="changeAlwaysOnTop",D="_applyShowStatusbar",C="_applyStatus",F="qx.ui.window.Window",E="changeCaption",w="focusout",I="beforeMaximize",H="maximize",G="restore",v="window",x="close",y="changeActive",A="minimized";
qx.Class.define(F,{extend:qx.ui.core.Widget,include:[qx.ui.core.MRemoteChildrenHandling,qx.ui.core.MRemoteLayoutHandling,qx.ui.core.MResizable,qx.ui.core.MMovable,qx.ui.core.MContentPadding],construct:function(T,U){qx.ui.core.Widget.call(this);
this._setLayout(new qx.ui.layout.VBox());
this._createChildControl(i);
this._createChildControl(P);
if(U!=null){this.setIcon(U);
}
if(T!=null){this.setCaption(T);
}this._updateCaptionBar();
this.addListener(s,this._onWindowMouseDown,this,true);
this.addListener(w,this._onWindowFocusOut,this);
qx.core.Init.getApplication().getRoot().add(this);
this.initVisibility();
qx.ui.core.FocusHandler.getInstance().addRoot(this);
this._getResizeFrame().setAppearance(p);
},statics:{DEFAULT_MANAGER_CLASS:qx.ui.window.Manager},events:{"beforeClose":j,"close":j,"beforeMinimize":j,"minimize":j,"beforeMaximize":j,"maximize":j,"beforeRestore":j,"restore":j},properties:{appearance:{refine:true,init:v},visibility:{refine:true,init:o},focusable:{refine:true,init:true},active:{check:k,init:false,apply:m,event:y},alwaysOnTop:{check:k,init:false,event:z},modal:{check:k,init:false,event:B},caption:{apply:h,event:E,nullable:true},icon:{check:M,nullable:true,apply:h,event:n,themeable:true},status:{check:M,nullable:true,apply:C,event:q},showClose:{check:k,init:true,apply:h,themeable:true},showMaximize:{check:k,init:true,apply:h,themeable:true},showMinimize:{check:k,init:true,apply:h,themeable:true},allowClose:{check:k,init:true,apply:h},allowMaximize:{check:k,init:true,apply:h},allowMinimize:{check:k,init:true,apply:h},showStatusbar:{check:k,init:false,apply:D}},members:{__lB:null,__lC:null,getChildrenContainer:function(){return this.getChildControl(P);
},_forwardStates:{active:true,maximized:true,showStatusbar:true},setLayoutParent:function(parent){qx.ui.core.Widget.prototype.setLayoutParent.call(this,parent);
},_createChildControlImpl:function(V,W){var X;

switch(V){case O:X=new qx.ui.container.Composite(new qx.ui.layout.HBox());
this._add(X);
X.add(this.getChildControl(N));
break;
case N:X=new qx.ui.basic.Label();
X.setValue(this.getStatus());
break;
case P:X=new qx.ui.container.Composite();
this._add(X,{flex:1});
break;
case i:var ba=new qx.ui.layout.Grid();
ba.setRowFlex(0,1);
ba.setColumnFlex(1,1);
X=new qx.ui.container.Composite(ba);
this._add(X);
X.addListener(l,this._onCaptionMouseDblClick,this);
this._activateMoveHandle(X);
break;
case R:X=new qx.ui.basic.Image(this.getIcon());
this.getChildControl(i).add(X,{row:0,column:0});
break;
case S:X=new qx.ui.basic.Label(this.getCaption());
X.setWidth(0);
X.setAllowGrowX(true);
var Y=this.getChildControl(i);
Y.add(X,{row:0,column:1});
break;
case d:X=new qx.ui.form.Button();
X.setFocusable(false);
X.addListener(a,this._onMinimizeButtonClick,this);
this.getChildControl(i).add(X,{row:0,column:2});
break;
case f:X=new qx.ui.form.Button();
X.setFocusable(false);
X.addListener(a,this._onRestoreButtonClick,this);
this.getChildControl(i).add(X,{row:0,column:3});
break;
case g:X=new qx.ui.form.Button();
X.setFocusable(false);
X.addListener(a,this._onMaximizeButtonClick,this);
this.getChildControl(i).add(X,{row:0,column:4});
break;
case c:X=new qx.ui.form.Button();
X.setFocusable(false);
X.addListener(a,this._onCloseButtonClick,this);
this.getChildControl(i).add(X,{row:0,column:6});
break;
}return X||qx.ui.core.Widget.prototype._createChildControlImpl.call(this,V);
},_updateCaptionBar:function(){var bc;
var bd=this.getIcon();

if(bd){this.getChildControl(R).setSource(bd);
this._showChildControl(R);
}else{this._excludeChildControl(R);
}var bb=this.getCaption();

if(bb){this.getChildControl(S).setValue(bb);
this._showChildControl(S);
}else{this._excludeChildControl(S);
}
if(this.getShowMinimize()){this._showChildControl(d);
bc=this.getChildControl(d);
this.getAllowMinimize()?bc.resetEnabled():bc.setEnabled(false);
}else{this._excludeChildControl(d);
}
if(this.getShowMaximize()){if(this.isMaximized()){this._showChildControl(f);
this._excludeChildControl(g);
}else{this._showChildControl(g);
this._excludeChildControl(f);
}bc=this.getChildControl(g);
this.getAllowMaximize()?bc.resetEnabled():bc.setEnabled(false);
}else{this._excludeChildControl(g);
this._excludeChildControl(f);
}
if(this.getShowClose()){this._showChildControl(c);
bc=this.getChildControl(c);
this.getAllowClose()?bc.resetEnabled():bc.setEnabled(false);
}else{this._excludeChildControl(c);
}},close:function(){if(!this.isVisible()){return;
}
if(this.fireNonBubblingEvent(J,qx.event.type.Event,[false,true])){this.hide();
this.fireEvent(x);
}},open:function(){this.show();
this.setActive(true);
this.focus();
},center:function(){var parent=this.getLayoutParent();

if(parent){var bf=parent.getBounds();

if(bf){var bg=this.getSizeHint();
var be=Math.round((bf.width-bg.width)/2);
var top=Math.round((bf.height-bg.height)/2);

if(top<0){top=0;
}this.moveTo(be,top);
return;
}}},maximize:function(){if(this.isMaximized()){return;
}var parent=this.getLayoutParent();

if(parent!=null&&parent.supportsMaximize()){if(this.fireNonBubblingEvent(I,qx.event.type.Event,[false,true])){if(!this.isVisible()){this.open();
}var bh=this.getLayoutProperties();
this.__lC=bh.left===undefined?0:bh.left;
this.__lB=bh.top===undefined?0:bh.top;
this.setLayoutProperties({left:null,top:null,edge:0});
this.addState(b);
this._updateCaptionBar();
this.fireEvent(H);
}}},minimize:function(){if(!this.isVisible()){return;
}
if(this.fireNonBubblingEvent(r,qx.event.type.Event,[false,true])){var bi=this.getLayoutProperties();
this.__lC=bi.left===undefined?0:bi.left;
this.__lB=bi.top===undefined?0:bi.top;
this.removeState(b);
this.hide();
this.fireEvent(u);
}},restore:function(){if(this.getMode()===L){return;
}
if(this.fireNonBubblingEvent(t,qx.event.type.Event,[false,true])){if(!this.isVisible()){this.open();
}var bj=this.__lC;
var top=this.__lB;
this.setLayoutProperties({edge:null,left:bj,top:top});
this.removeState(b);
this._updateCaptionBar();
this.fireEvent(G);
}},moveTo:function(bk,top){if(this.isMaximized()){return;
}this.setLayoutProperties({left:bk,top:top});
},isMaximized:function(){return this.hasState(b);
},getMode:function(){if(!this.isVisible()){return A;
}else{if(this.isMaximized()){return b;
}else{return L;
}}},_applyActive:function(bl,bm){if(bm){this.removeState(K);
}else{this.addState(K);
}},_getContentPaddingTarget:function(){return this.getChildControl(P);
},_applyShowStatusbar:function(bn,bo){var bp=this._getResizeFrame();

if(bn){this.addState(Q);
bp.addState(Q);
}else{this.removeState(Q);
bp.removeState(Q);
}
if(bn){this._showChildControl(O);
}else{this._excludeChildControl(O);
}},_applyCaptionBarChange:function(bq,br){this._updateCaptionBar();
},_applyStatus:function(bs,bt){var bu=this.getChildControl(N,true);

if(bu){bu.setValue(bs);
}},_onWindowEventStop:function(e){e.stopPropagation();
},_onWindowMouseDown:function(e){this.setActive(true);
},_onWindowFocusOut:function(e){if(this.getModal()){return;
}var bv=e.getRelatedTarget();

if(bv!=null&&!qx.ui.core.Widget.contains(this,bv)){this.setActive(false);
}},_onCaptionMouseDblClick:function(e){if(this.getAllowMaximize()){this.isMaximized()?this.restore():this.maximize();
}},_onMinimizeButtonClick:function(e){this.minimize();
this.getChildControl(d).reset();
},_onRestoreButtonClick:function(e){this.restore();
this.getChildControl(f).reset();
},_onMaximizeButtonClick:function(e){this.maximize();
this.getChildControl(g).reset();
},_onCloseButtonClick:function(e){this.close();
this.getChildControl(c).reset();
}}});
})();
(function(){var n="_applyLayoutChange",m="top",k="left",j="middle",h="Decorator",g="center",f="_applyReversed",e="bottom",d="qx.ui.layout.VBox",c="Integer",a="right",b="Boolean";
qx.Class.define(d,{extend:qx.ui.layout.Abstract,construct:function(o,p,q){qx.ui.layout.Abstract.call(this);

if(o){this.setSpacing(o);
}
if(p){this.setAlignY(p);
}
if(q){this.setSeparator(q);
}},properties:{alignY:{check:[m,j,e],init:m,apply:n},alignX:{check:[k,g,a],init:k,apply:n},spacing:{check:c,init:0,apply:n},separator:{check:h,nullable:true,apply:n},reversed:{check:b,init:false,apply:f}},members:{__lD:null,__lE:null,__lF:null,__fg:null,_applyReversed:function(){this._invalidChildrenCache=true;
this._applyLayoutChange();
},__lG:function(){var w=this._getLayoutChildren();
var length=w.length;
var s=false;
var r=this.__lD&&this.__lD.length!=length&&this.__lE&&this.__lD;
var u;
var t=r?this.__lD:new Array(length);
var v=r?this.__lE:new Array(length);
if(this.getReversed()){w=w.concat().reverse();
}for(var i=0;i<length;i++){u=w[i].getLayoutProperties();

if(u.height!=null){t[i]=parseFloat(u.height)/100;
}
if(u.flex!=null){v[i]=u.flex;
s=true;
}else{v[i]=0;
}}if(!r){this.__lD=t;
this.__lE=v;
}this.__lF=s;
this.__fg=w;
delete this._invalidChildrenCache;
},verifyLayoutProperty:null,renderLayout:function(x,y){if(this._invalidChildrenCache){this.__lG();
}var F=this.__fg;
var length=F.length;
var P=qx.ui.layout.Util;
var O=this.getSpacing();
var S=this.getSeparator();

if(S){var C=P.computeVerticalSeparatorGaps(F,O,S);
}else{var C=P.computeVerticalGaps(F,O,true);
}var i,A,B,J;
var K=[];
var Q=C;

for(i=0;i<length;i+=1){J=this.__lD[i];
B=J!=null?Math.floor((y-C)*J):F[i].getSizeHint().height;
K.push(B);
Q+=B;
}if(this.__lF&&Q!=y){var H={};
var N,R;

for(i=0;i<length;i+=1){N=this.__lE[i];

if(N>0){G=F[i].getSizeHint();
H[i]={min:G.minHeight,value:K[i],max:G.maxHeight,flex:N};
}}var D=P.computeFlexOffsets(H,y,Q);

for(i in D){R=D[i].offset;
K[i]+=R;
Q+=R;
}}var top=F[0].getMarginTop();
if(Q<y&&this.getAlignY()!=m){top=y-Q;

if(this.getAlignY()===j){top=Math.round(top/2);
}}var G,U,L,B,I,M,E;
this._clearSeparators();
if(S){var T=qx.theme.manager.Decoration.getInstance().resolve(S).getInsets();
var z=T.top+T.bottom;
}for(i=0;i<length;i+=1){A=F[i];
B=K[i];
G=A.getSizeHint();
M=A.getMarginLeft();
E=A.getMarginRight();
L=Math.max(G.minWidth,Math.min(x-M-E,G.maxWidth));
U=P.computeHorizontalAlignOffset(A.getAlignX()||this.getAlignX(),L,x,M,E);
if(i>0){if(S){top+=I+O;
this._renderSeparator(S,{top:top,left:0,height:z,width:x});
top+=z+O+A.getMarginTop();
}else{top+=P.collapseMargins(O,I,A.getMarginTop());
}}A.renderLayout(U,top,L,B);
top+=B;
I=A.getMarginBottom();
}},_computeSizeHint:function(){if(this._invalidChildrenCache){this.__lG();
}var bc=qx.ui.layout.Util;
var bk=this.__fg;
var X=0,bb=0,ba=0;
var V=0,bd=0;
var bh,W,bj;
for(var i=0,l=bk.length;i<l;i+=1){bh=bk[i];
W=bh.getSizeHint();
bb+=W.height;
var bg=this.__lE[i];
var Y=this.__lD[i];

if(bg){X+=W.minHeight;
}else if(Y){ba=Math.max(ba,Math.round(W.minHeight/Y));
}else{X+=W.height;
}bj=bh.getMarginLeft()+bh.getMarginRight();
if((W.width+bj)>bd){bd=W.width+bj;
}if((W.minWidth+bj)>V){V=W.minWidth+bj;
}}X+=ba;
var bf=this.getSpacing();
var bi=this.getSeparator();

if(bi){var be=bc.computeVerticalSeparatorGaps(bk,bf,bi);
}else{var be=bc.computeVerticalGaps(bk,bf,true);
}return {minHeight:X+be,height:bb+be,minWidth:V,width:bd};
}},destruct:function(){this.__lD=this.__lE=this.__fg=null;
}});
})();
(function(){var n="_applyLayoutChange",m="left",k="center",j="top",h="Decorator",g="middle",f="_applyReversed",e="bottom",d="Boolean",c="right",a="Integer",b="qx.ui.layout.HBox";
qx.Class.define(b,{extend:qx.ui.layout.Abstract,construct:function(o,p,q){qx.ui.layout.Abstract.call(this);

if(o){this.setSpacing(o);
}
if(p){this.setAlignX(p);
}
if(q){this.setSeparator(q);
}},properties:{alignX:{check:[m,k,c],init:m,apply:n},alignY:{check:[j,g,e],init:j,apply:n},spacing:{check:a,init:0,apply:n},separator:{check:h,nullable:true,apply:n},reversed:{check:d,init:false,apply:f}},members:{__lH:null,__lE:null,__lF:null,__fg:null,_applyReversed:function(){this._invalidChildrenCache=true;
this._applyLayoutChange();
},__lG:function(){var w=this._getLayoutChildren();
var length=w.length;
var t=false;
var r=this.__lH&&this.__lH.length!=length&&this.__lE&&this.__lH;
var u;
var s=r?this.__lH:new Array(length);
var v=r?this.__lE:new Array(length);
if(this.getReversed()){w=w.concat().reverse();
}for(var i=0;i<length;i++){u=w[i].getLayoutProperties();

if(u.width!=null){s[i]=parseFloat(u.width)/100;
}
if(u.flex!=null){v[i]=u.flex;
t=true;
}else{v[i]=0;
}}if(!r){this.__lH=s;
this.__lE=v;
}this.__lF=t;
this.__fg=w;
delete this._invalidChildrenCache;
},verifyLayoutProperty:null,renderLayout:function(x,y){if(this._invalidChildrenCache){this.__lG();
}var E=this.__fg;
var length=E.length;
var N=qx.ui.layout.Util;
var M=this.getSpacing();
var Q=this.getSeparator();

if(Q){var B=N.computeHorizontalSeparatorGaps(E,M,Q);
}else{var B=N.computeHorizontalGaps(E,M,true);
}var i,z,K,J;
var P=[];
var F=B;

for(i=0;i<length;i+=1){J=this.__lH[i];
K=J!=null?Math.floor((x-B)*J):E[i].getSizeHint().width;
P.push(K);
F+=K;
}if(this.__lF&&F!=x){var H={};
var L,O;

for(i=0;i<length;i+=1){L=this.__lE[i];

if(L>0){G=E[i].getSizeHint();
H[i]={min:G.minWidth,value:P[i],max:G.maxWidth,flex:L};
}}var C=N.computeFlexOffsets(H,x,F);

for(i in C){O=C[i].offset;
P[i]+=O;
F+=O;
}}var U=E[0].getMarginLeft();
if(F<x&&this.getAlignX()!=m){U=x-F;

if(this.getAlignX()===k){U=Math.round(U/2);
}}var G,top,A,K,D,S,I;
var M=this.getSpacing();
this._clearSeparators();
if(Q){var R=qx.theme.manager.Decoration.getInstance().resolve(Q).getInsets();
var T=R.left+R.right;
}for(i=0;i<length;i+=1){z=E[i];
K=P[i];
G=z.getSizeHint();
S=z.getMarginTop();
I=z.getMarginBottom();
A=Math.max(G.minHeight,Math.min(y-S-I,G.maxHeight));
top=N.computeVerticalAlignOffset(z.getAlignY()||this.getAlignY(),A,y,S,I);
if(i>0){if(Q){U+=D+M;
this._renderSeparator(Q,{left:U,top:0,width:T,height:y});
U+=T+M+z.getMarginLeft();
}else{U+=N.collapseMargins(M,D,z.getMarginLeft());
}}z.renderLayout(U,top,K,A);
U+=K;
D=z.getMarginRight();
}},_computeSizeHint:function(){if(this._invalidChildrenCache){this.__lG();
}var bc=qx.ui.layout.Util;
var bk=this.__fg;
var V=0,bd=0,ba=0;
var Y=0,bb=0;
var bh,W,bj;
for(var i=0,l=bk.length;i<l;i+=1){bh=bk[i];
W=bh.getSizeHint();
bd+=W.width;
var bg=this.__lE[i];
var X=this.__lH[i];

if(bg){V+=W.minWidth;
}else if(X){ba=Math.max(ba,Math.round(W.minWidth/X));
}else{V+=W.width;
}bj=bh.getMarginTop()+bh.getMarginBottom();
if((W.height+bj)>bb){bb=W.height+bj;
}if((W.minHeight+bj)>Y){Y=W.minHeight+bj;
}}V+=ba;
var bf=this.getSpacing();
var bi=this.getSeparator();

if(bi){var be=bc.computeHorizontalSeparatorGaps(bk,bf,bi);
}else{var be=bc.computeHorizontalGaps(bk,bf,true);
}return {minWidth:V+be,width:bd+be,minHeight:Y,height:bb};
}},destruct:function(){this.__lH=this.__lE=this.__fg=null;
}});
})();
(function(){var r="left",q="top",p="_applyLayoutChange",o="hAlign",n="flex",m="vAlign",h="Integer",g="minWidth",f="width",e="minHeight",b="qx.ui.layout.Grid",d="height",c="maxHeight",a="maxWidth";
qx.Class.define(b,{extend:qx.ui.layout.Abstract,construct:function(s,t){qx.ui.layout.Abstract.call(this);
this.__lI=[];
this.__lJ=[];

if(s){this.setSpacingX(s);
}
if(t){this.setSpacingY(t);
}},properties:{spacingX:{check:h,init:0,apply:p},spacingY:{check:h,init:0,apply:p}},members:{__lK:null,__lI:null,__lJ:null,__lL:null,__lM:null,__lN:null,__lO:null,__lP:null,__lQ:null,verifyLayoutProperty:null,__lR:function(){var B=[];
var A=[];
var C=[];
var w=-1;
var v=-1;
var E=this._getLayoutChildren();

for(var i=0,l=E.length;i<l;i++){var z=E[i];
var D=z.getLayoutProperties();
var F=D.row;
var u=D.column;
D.colSpan=D.colSpan||1;
D.rowSpan=D.rowSpan||1;
if(F==null||u==null){throw new Error("The layout properties 'row' and 'column' of the child widget '"+z+"' must be defined!");
}
if(B[F]&&B[F][u]){throw new Error("Cannot add widget '"+z+"'!. "+"There is already a widget '"+B[F][u]+"' in this cell ("+F+", "+u+")");
}
for(var x=u;x<u+D.colSpan;x++){for(var y=F;y<F+D.rowSpan;y++){if(B[y]==undefined){B[y]=[];
}B[y][x]=z;
v=Math.max(v,x);
w=Math.max(w,y);
}}
if(D.rowSpan>1){C.push(z);
}
if(D.colSpan>1){A.push(z);
}}for(var y=0;y<=w;y++){if(B[y]==undefined){B[y]=[];
}}this.__lK=B;
this.__lL=A;
this.__lM=C;
this.__lN=w;
this.__lO=v;
this.__lP=null;
this.__lQ=null;
delete this._invalidChildrenCache;
},_setRowData:function(G,H,I){var J=this.__lI[G];

if(!J){this.__lI[G]={};
this.__lI[G][H]=I;
}else{J[H]=I;
}},_setColumnData:function(K,L,M){var N=this.__lJ[K];

if(!N){this.__lJ[K]={};
this.__lJ[K][L]=M;
}else{N[L]=M;
}},setSpacing:function(O){this.setSpacingY(O);
this.setSpacingX(O);
return this;
},setColumnAlign:function(P,Q,R){this._setColumnData(P,o,Q);
this._setColumnData(P,m,R);
this._applyLayoutChange();
return this;
},getColumnAlign:function(S){var T=this.__lJ[S]||{};
return {vAlign:T.vAlign||q,hAlign:T.hAlign||r};
},setRowAlign:function(U,V,W){this._setRowData(U,o,V);
this._setRowData(U,m,W);
this._applyLayoutChange();
return this;
},getRowAlign:function(X){var Y=this.__lI[X]||{};
return {vAlign:Y.vAlign||q,hAlign:Y.hAlign||r};
},getCellWidget:function(ba,bb){if(this._invalidChildrenCache){this.__lR();
}var ba=this.__lK[ba]||{};
return ba[bb]||null;
},getRowCount:function(){if(this._invalidChildrenCache){this.__lR();
}return this.__lN+1;
},getColumnCount:function(){if(this._invalidChildrenCache){this.__lR();
}return this.__lO+1;
},getCellAlign:function(bc,bd){var bj=q;
var bh=r;
var bi=this.__lI[bc];
var bf=this.__lJ[bd];
var be=this.__lK[bc][bd];

if(be){var bg={vAlign:be.getAlignY(),hAlign:be.getAlignX()};
}else{bg={};
}if(bg.vAlign){bj=bg.vAlign;
}else if(bi&&bi.vAlign){bj=bi.vAlign;
}else if(bf&&bf.vAlign){bj=bf.vAlign;
}if(bg.hAlign){bh=bg.hAlign;
}else if(bf&&bf.hAlign){bh=bf.hAlign;
}else if(bi&&bi.hAlign){bh=bi.hAlign;
}return {vAlign:bj,hAlign:bh};
},setColumnFlex:function(bk,bl){this._setColumnData(bk,n,bl);
this._applyLayoutChange();
return this;
},getColumnFlex:function(bm){var bn=this.__lJ[bm]||{};
return bn.flex!==undefined?bn.flex:0;
},setRowFlex:function(bo,bp){this._setRowData(bo,n,bp);
this._applyLayoutChange();
return this;
},getRowFlex:function(bq){var br=this.__lI[bq]||{};
var bs=br.flex!==undefined?br.flex:0;
return bs;
},setColumnMaxWidth:function(bt,bu){this._setColumnData(bt,a,bu);
this._applyLayoutChange();
return this;
},getColumnMaxWidth:function(bv){var bw=this.__lJ[bv]||{};
return bw.maxWidth!==undefined?bw.maxWidth:Infinity;
},setColumnWidth:function(bx,by){this._setColumnData(bx,f,by);
this._applyLayoutChange();
return this;
},getColumnWidth:function(bz){var bA=this.__lJ[bz]||{};
return bA.width!==undefined?bA.width:null;
},setColumnMinWidth:function(bB,bC){this._setColumnData(bB,g,bC);
this._applyLayoutChange();
return this;
},getColumnMinWidth:function(bD){var bE=this.__lJ[bD]||{};
return bE.minWidth||0;
},setRowMaxHeight:function(bF,bG){this._setRowData(bF,c,bG);
this._applyLayoutChange();
return this;
},getRowMaxHeight:function(bH){var bI=this.__lI[bH]||{};
return bI.maxHeight||Infinity;
},setRowHeight:function(bJ,bK){this._setRowData(bJ,d,bK);
this._applyLayoutChange();
return this;
},getRowHeight:function(bL){var bM=this.__lI[bL]||{};
return bM.height!==undefined?bM.height:null;
},setRowMinHeight:function(bN,bO){this._setRowData(bN,e,bO);
this._applyLayoutChange();
return this;
},getRowMinHeight:function(bP){var bQ=this.__lI[bP]||{};
return bQ.minHeight||0;
},__lS:function(bR){var bV=bR.getSizeHint();
var bU=bR.getMarginLeft()+bR.getMarginRight();
var bT=bR.getMarginTop()+bR.getMarginBottom();
var bS={height:bV.height+bT,width:bV.width+bU,minHeight:bV.minHeight+bT,minWidth:bV.minWidth+bU,maxHeight:bV.maxHeight+bT,maxWidth:bV.maxWidth+bU};
return bS;
},_fixHeightsRowSpan:function(bW){var ce=this.getSpacingY();

for(var i=0,l=this.__lM.length;i<l;i++){var cl=this.__lM[i];
var ch=this.__lS(cl);
var ca=cl.getLayoutProperties();
var cg=ca.row;
var cq=ce*(ca.rowSpan-1);
var bX=cq;
var cb={};

for(var j=0;j<ca.rowSpan;j++){var cf=ca.row+j;
var cp=bW[cf];
var cr=this.getRowFlex(cf);

if(cr>0){cb[cf]={min:cp.minHeight,value:cp.height,max:cp.maxHeight,flex:cr};
}cq+=cp.height;
bX+=cp.minHeight;
}if(cq<ch.height){if(!qx.lang.Object.isEmpty(cb)){var cc=qx.ui.layout.Util.computeFlexOffsets(cb,ch.height,cq);

for(var k=0;k<ca.rowSpan;k++){var cn=cc[cg+k]?cc[cg+k].offset:0;
bW[cg+k].height+=cn;
}}else{var ck=ce*(ca.rowSpan-1);
var ci=ch.height-ck;
var co=Math.floor(ci/ca.rowSpan);
var cm=0;
var bY=0;

for(var k=0;k<ca.rowSpan;k++){var cd=bW[cg+k].height;
cm+=cd;

if(cd<co){bY++;
}}var cj=Math.floor((ci-cm)/bY);
for(var k=0;k<ca.rowSpan;k++){if(bW[cg+k].height<co){bW[cg+k].height+=cj;
}}}}if(bX<ch.minHeight){var cc=qx.ui.layout.Util.computeFlexOffsets(cb,ch.minHeight,bX);

for(var j=0;j<ca.rowSpan;j++){var cn=cc[cg+j]?cc[cg+j].offset:0;
bW[cg+j].minHeight+=cn;
}}}},_fixWidthsColSpan:function(cs){var cw=this.getSpacingX();

for(var i=0,l=this.__lL.length;i<l;i++){var ct=this.__lL[i];
var cv=this.__lS(ct);
var cy=ct.getLayoutProperties();
var cu=cy.column;
var cE=cw*(cy.colSpan-1);
var cx=cE;
var cz={};
var cB;

for(var j=0;j<cy.colSpan;j++){var cF=cy.column+j;
var cD=cs[cF];
var cC=this.getColumnFlex(cF);
if(cC>0){cz[cF]={min:cD.minWidth,value:cD.width,max:cD.maxWidth,flex:cC};
}cE+=cD.width;
cx+=cD.minWidth;
}if(cE<cv.width){var cA=qx.ui.layout.Util.computeFlexOffsets(cz,cv.width,cE);

for(var j=0;j<cy.colSpan;j++){cB=cA[cu+j]?cA[cu+j].offset:0;
cs[cu+j].width+=cB;
}}if(cx<cv.minWidth){var cA=qx.ui.layout.Util.computeFlexOffsets(cz,cv.minWidth,cx);

for(var j=0;j<cy.colSpan;j++){cB=cA[cu+j]?cA[cu+j].offset:0;
cs[cu+j].minWidth+=cB;
}}}},_getRowHeights:function(){if(this.__lP!=null){return this.__lP;
}var cP=[];
var cI=this.__lN;
var cH=this.__lO;

for(var cQ=0;cQ<=cI;cQ++){var cJ=0;
var cL=0;
var cK=0;

for(var cO=0;cO<=cH;cO++){var cG=this.__lK[cQ][cO];

if(!cG){continue;
}var cM=cG.getLayoutProperties().rowSpan||0;

if(cM>1){continue;
}var cN=this.__lS(cG);

if(this.getRowFlex(cQ)>0){cJ=Math.max(cJ,cN.minHeight);
}else{cJ=Math.max(cJ,cN.height);
}cL=Math.max(cL,cN.height);
}var cJ=Math.max(cJ,this.getRowMinHeight(cQ));
var cK=this.getRowMaxHeight(cQ);

if(this.getRowHeight(cQ)!==null){var cL=this.getRowHeight(cQ);
}else{var cL=Math.max(cJ,Math.min(cL,cK));
}cP[cQ]={minHeight:cJ,height:cL,maxHeight:cK};
}
if(this.__lM.length>0){this._fixHeightsRowSpan(cP);
}this.__lP=cP;
return cP;
},_getColWidths:function(){if(this.__lQ!=null){return this.__lQ;
}var cV=[];
var cS=this.__lO;
var cU=this.__lN;

for(var db=0;db<=cS;db++){var cY=0;
var cX=0;
var cT=Infinity;

for(var dc=0;dc<=cU;dc++){var cR=this.__lK[dc][db];

if(!cR){continue;
}var cW=cR.getLayoutProperties().colSpan||0;

if(cW>1){continue;
}var da=this.__lS(cR);

if(this.getColumnFlex(db)>0){cX=Math.max(cX,da.minWidth);
}else{cX=Math.max(cX,da.width);
}cY=Math.max(cY,da.width);
}cX=Math.max(cX,this.getColumnMinWidth(db));
cT=this.getColumnMaxWidth(db);

if(this.getColumnWidth(db)!==null){var cY=this.getColumnWidth(db);
}else{var cY=Math.max(cX,Math.min(cY,cT));
}cV[db]={minWidth:cX,width:cY,maxWidth:cT};
}
if(this.__lL.length>0){this._fixWidthsColSpan(cV);
}this.__lQ=cV;
return cV;
},_getColumnFlexOffsets:function(dd){var de=this.getSizeHint();
var di=dd-de.width;

if(di==0){return {};
}var dg=this._getColWidths();
var df={};

for(var i=0,l=dg.length;i<l;i++){var dj=dg[i];
var dh=this.getColumnFlex(i);

if((dh<=0)||(dj.width==dj.maxWidth&&di>0)||(dj.width==dj.minWidth&&di<0)){continue;
}df[i]={min:dj.minWidth,value:dj.width,max:dj.maxWidth,flex:dh};
}return qx.ui.layout.Util.computeFlexOffsets(df,dd,de.width);
},_getRowFlexOffsets:function(dk){var dl=this.getSizeHint();
var dp=dk-dl.height;

if(dp==0){return {};
}var dq=this._getRowHeights();
var dm={};

for(var i=0,l=dq.length;i<l;i++){var dr=dq[i];
var dn=this.getRowFlex(i);

if((dn<=0)||(dr.height==dr.maxHeight&&dp>0)||(dr.height==dr.minHeight&&dp<0)){continue;
}dm[i]={min:dr.minHeight,value:dr.height,max:dr.maxHeight,flex:dn};
}return qx.ui.layout.Util.computeFlexOffsets(dm,dk,dl.height);
},renderLayout:function(ds,dt){if(this._invalidChildrenCache){this.__lR();
}var dH=qx.ui.layout.Util;
var dv=this.getSpacingX();
var dB=this.getSpacingY();
var dM=this._getColWidths();
var dL=this._getColumnFlexOffsets(ds);
var dw=[];
var dO=this.__lO;
var du=this.__lN;
var dN;

for(var dP=0;dP<=dO;dP++){dN=dL[dP]?dL[dP].offset:0;
dw[dP]=dM[dP].width+dN;
}var dE=this._getRowHeights();
var dG=this._getRowFlexOffsets(dt);
var dV=[];

for(var dC=0;dC<=du;dC++){dN=dG[dC]?dG[dC].offset:0;
dV[dC]=dE[dC].height+dN;
}var dW=0;

for(var dP=0;dP<=dO;dP++){var top=0;

for(var dC=0;dC<=du;dC++){var dJ=this.__lK[dC][dP];
if(!dJ){top+=dV[dC]+dB;
continue;
}var dx=dJ.getLayoutProperties();
if(dx.row!==dC||dx.column!==dP){top+=dV[dC]+dB;
continue;
}var dU=dv*(dx.colSpan-1);

for(var i=0;i<dx.colSpan;i++){dU+=dw[dP+i];
}var dK=dB*(dx.rowSpan-1);

for(var i=0;i<dx.rowSpan;i++){dK+=dV[dC+i];
}var dy=dJ.getSizeHint();
var dS=dJ.getMarginTop();
var dI=dJ.getMarginLeft();
var dF=dJ.getMarginBottom();
var dA=dJ.getMarginRight();
var dD=Math.max(dy.minWidth,Math.min(dU-dI-dA,dy.maxWidth));
var dT=Math.max(dy.minHeight,Math.min(dK-dS-dF,dy.maxHeight));
var dQ=this.getCellAlign(dC,dP);
var dR=dW+dH.computeHorizontalAlignOffset(dQ.hAlign,dD,dU,dI,dA);
var dz=top+dH.computeVerticalAlignOffset(dQ.vAlign,dT,dK,dS,dF);
dJ.renderLayout(dR,dz,dD,dT);
top+=dV[dC]+dB;
}dW+=dw[dP]+dv;
}},invalidateLayoutCache:function(){qx.ui.layout.Abstract.prototype.invalidateLayoutCache.call(this);
this.__lQ=null;
this.__lP=null;
},_computeSizeHint:function(){if(this._invalidChildrenCache){this.__lR();
}var ec=this._getColWidths();
var ee=0,ef=0;

for(var i=0,l=ec.length;i<l;i++){var eg=ec[i];

if(this.getColumnFlex(i)>0){ee+=eg.minWidth;
}else{ee+=eg.width;
}ef+=eg.width;
}var eh=this._getRowHeights();
var ea=0,ed=0;

for(var i=0,l=eh.length;i<l;i++){var ei=eh[i];

if(this.getRowFlex(i)>0){ea+=ei.minHeight;
}else{ea+=ei.height;
}ed+=ei.height;
}var dY=this.getSpacingX()*(ec.length-1);
var dX=this.getSpacingY()*(eh.length-1);
var eb={minWidth:ee+dY,width:ef+dY,minHeight:ea+dX,height:ed+dX};
return eb;
}},destruct:function(){this.__lK=this.__lI=this.__lJ=this.__lL=this.__lM=this.__lQ=this.__lP=null;
}});
})();
(function(){var n="execute",m="toolTipText",l="icon",k="label",j="qx.ui.core.MExecutable",h="value",g="qx.event.type.Event",f="_applyCommand",d="enabled",c="menu",a="changeCommand",b="qx.ui.core.Command";
qx.Mixin.define(j,{events:{"execute":g},properties:{command:{check:b,apply:f,event:a,nullable:true}},members:{__lT:null,__lU:false,__lV:null,_bindableProperties:[d,k,l,m,h,c],execute:function(){var o=this.getCommand();

if(o){if(this.__lU){this.__lU=false;
}else{this.__lU=true;
o.execute(this);
}}this.fireEvent(n);
},__lW:function(e){if(this.__lU){this.__lU=false;
return;
}this.__lU=true;
this.execute();
},_applyCommand:function(p,q){if(q!=null){q.removeListenerById(this.__lV);
}
if(p!=null){this.__lV=p.addListener(n,this.__lW,this);
}var t=this.__lT;

if(t==null){this.__lT=t={};
}var u;

for(var i=0;i<this._bindableProperties.length;i++){var s=this._bindableProperties[i];
if(q!=null&&!q.isDisposed()&&t[s]!=null){q.removeBinding(t[s]);
t[s]=null;
}if(p!=null&&qx.Class.hasProperty(this.constructor,s)){var r=p.get(s);

if(r==null){u=this.get(s);
}else{u=null;
}t[s]=p.bind(s,this,s);
if(u){this.set(s,u);
}}}}},destruct:function(){this._applyCommand(null,this.getCommand());
this.__lT=null;
}});
})();
(function(){var b="qx.ui.form.IExecutable",a="qx.event.type.Data";
qx.Interface.define(b,{events:{"execute":a},members:{setCommand:function(c){return arguments.length==1;
},getCommand:function(){},execute:function(){}}});
})();
(function(){var o="pressed",n="abandoned",m="hovered",l="Enter",k="Space",j="dblclick",i="qx.ui.form.Button",h="mouseup",g="mousedown",f="mouseover",b="mouseout",d="keydown",c="button",a="keyup";
qx.Class.define(i,{extend:qx.ui.basic.Atom,include:[qx.ui.core.MExecutable],implement:[qx.ui.form.IExecutable],construct:function(p,q,r){qx.ui.basic.Atom.call(this,p,q);

if(r!=null){this.setCommand(r);
}this.addListener(f,this._onMouseOver);
this.addListener(b,this._onMouseOut);
this.addListener(g,this._onMouseDown);
this.addListener(h,this._onMouseUp);
this.addListener(d,this._onKeyDown);
this.addListener(a,this._onKeyUp);
this.addListener(j,this._onStopEvent);
},properties:{appearance:{refine:true,init:c},focusable:{refine:true,init:true}},members:{_forwardStates:{focused:true,hovered:true,pressed:true,disabled:true},press:function(){if(this.hasState(n)){return;
}this.addState(o);
},release:function(){if(this.hasState(o)){this.removeState(o);
}},reset:function(){this.removeState(o);
this.removeState(n);
this.removeState(m);
},_onMouseOver:function(e){if(!this.isEnabled()||e.getTarget()!==this){return;
}
if(this.hasState(n)){this.removeState(n);
this.addState(o);
}this.addState(m);
},_onMouseOut:function(e){if(!this.isEnabled()||e.getTarget()!==this){return;
}this.removeState(m);

if(this.hasState(o)){this.removeState(o);
this.addState(n);
}},_onMouseDown:function(e){if(!e.isLeftPressed()){return;
}e.stopPropagation();
this.capture();
this.removeState(n);
this.addState(o);
},_onMouseUp:function(e){this.releaseCapture();
var s=this.hasState(o);
var t=this.hasState(n);

if(s){this.removeState(o);
}
if(t){this.removeState(n);
}else{this.addState(m);

if(s){this.execute();
}}e.stopPropagation();
},_onKeyDown:function(e){switch(e.getKeyIdentifier()){case l:case k:this.removeState(n);
this.addState(o);
e.stopPropagation();
}},_onKeyUp:function(e){switch(e.getKeyIdentifier()){case l:case k:if(this.hasState(o)){this.removeState(n);
this.removeState(o);
this.execute();
e.stopPropagation();
}}}}});
})();
(function(){var l="qx.dynlocale",k="Boolean",j="changeLocale",i="changeInvalidMessage",h="String",g="invalid",f="",d="qx.ui.form.MForm",c="_applyValid",b="changeRequired",a="changeValid";
qx.Mixin.define(d,{construct:function(){if(qx.core.Environment.get(l)){qx.locale.Manager.getInstance().addListener(j,this.__lX,this);
}},properties:{valid:{check:k,init:true,apply:c,event:a},required:{check:k,init:false,event:b},invalidMessage:{check:h,init:f,event:i},requiredInvalidMessage:{check:h,nullable:true,event:i}},members:{_applyValid:function(m,n){m?this.removeState(g):this.addState(g);
},__lX:qx.core.Environment.select(l,{"true":function(e){var o=this.getInvalidMessage();

if(o&&o.translate){this.setInvalidMessage(o.translate());
}var p=this.getRequiredInvalidMessage();

if(p&&p.translate){this.setRequiredInvalidMessage(p.translate());
}},"false":null})},destruct:function(){if(qx.core.Environment.get(l)){qx.locale.Manager.getInstance().removeListener(j,this.__lX,this);
}}});
})();
(function(){var k="showingPlaceholder",j="",i="engine.name",h="none",g="qx.dynlocale",f="Boolean",d="A",c="color",b="qx.event.type.Data",a="readonly",bf="placeholder",be="input",bd="focusin",bc="visibility",bb="gecko",ba="focusout",Y="changeLocale",X="hidden",W="absolute",V="readOnly",r="text",s="_applyTextAlign",p="px",q="RegExp",n=")",o="syncAppearance",l="changeValue",m="engine.version",v="change",w="changeStatus",E="textAlign",C="focused",L="center",G="visible",R="disabled",P="url(",y="String",U="resize",T="qx.ui.form.AbstractField",S="transparent",x="spellcheck",A="false",B="right",D="PositiveInteger",F="abstract",H="block",M="css.placeholder",Q="webkit",t="_applyReadOnly",u="_applyPlaceholder",z="left",K="off",J="mshtml",I="qx/static/blank.gif",O="text-placeholder",N="changeReadOnly";
qx.Class.define(T,{extend:qx.ui.core.Widget,implement:[qx.ui.form.IStringForm,qx.ui.form.IForm],include:[qx.ui.form.MForm],type:F,construct:function(bg){qx.ui.core.Widget.call(this);
this.__lY=!qx.core.Environment.get(M)||(qx.core.Environment.get(i)==bb&&parseFloat(qx.core.Environment.get(m))>=2);

if(bg!=null){this.setValue(bg);
}this.getContentElement().addListener(v,this._onChangeContent,this);
if(this.__lY){this.addListener(o,this._syncPlaceholder,this);
}if(qx.core.Environment.get(g)){qx.locale.Manager.getInstance().addListener(Y,this._onChangeLocale,this);
}},events:{"input":b,"changeValue":b},properties:{textAlign:{check:[z,L,B],nullable:true,themeable:true,apply:s},readOnly:{check:f,apply:t,event:N,init:false},selectable:{refine:true,init:true},focusable:{refine:true,init:true},maxLength:{check:D,init:Infinity},liveUpdate:{check:f,init:false},placeholder:{check:y,nullable:true,apply:u},filter:{check:q,nullable:true,init:null}},members:{__ma:true,__mb:null,__mc:null,__md:null,__lY:true,__jH:null,__jL:null,getFocusElement:function(){var bh=this.getContentElement();

if(bh){return bh;
}},_createInputElement:function(){return new qx.html.Input(r);
},renderLayout:function(bi,top,bj,bk){var bl=this._updateInsets;
var bp=qx.ui.core.Widget.prototype.renderLayout.call(this,bi,top,bj,bk);
if(!bp){return;
}var bn=bp.size||bl;
var bq=p;

if(bn||bp.local||bp.margin){var bm=this.getInsets();
var innerWidth=bj-bm.left-bm.right;
var innerHeight=bk-bm.top-bm.bottom;
innerWidth=innerWidth<0?0:innerWidth;
innerHeight=innerHeight<0?0:innerHeight;
}var bo=this.getContentElement();
if(bl&&this.__lY){this.__mg().setStyles({"left":bm.left+bq,"top":bm.top+bq});
}
if(bn){if(this.__lY){this.__mg().setStyles({"width":innerWidth+bq,"height":innerHeight+bq});
}bo.setStyles({"width":innerWidth+bq,"height":innerHeight+bq});
this._renderContentElement(innerHeight,bo);
}},_renderContentElement:function(innerHeight,br){},_createContentElement:function(){var bs=this._createInputElement();
bs.setStyles({"border":h,"padding":0,"margin":0,"display":H,"background":S,"outline":h,"appearance":h,"position":W,"autoComplete":K});
bs.setSelectable(this.getSelectable());
bs.setEnabled(this.getEnabled());
bs.addListener(be,this._onHtmlInput,this);
bs.setAttribute(x,A);
if(qx.core.Environment.get(i)==Q||qx.core.Environment.get(i)==bb){bs.setStyle(U,h);
}if((qx.core.Environment.get(i)==J)){bs.setStyles({backgroundImage:P+qx.util.ResourceManager.getInstance().toUri(I)+n});
}return bs;
},_applyEnabled:function(bt,bu){qx.ui.core.Widget.prototype._applyEnabled.call(this,bt,bu);
this.getContentElement().setEnabled(bt);

if(this.__lY){if(bt){this._showPlaceholder();
}else{this._removePlaceholder();
}}else{var bv=this.getContentElement();
bv.setAttribute(bf,bt?this.getPlaceholder():j);
}},__me:{width:16,height:16},_getContentHint:function(){return {width:this.__me.width*10,height:this.__me.height||16};
},_applyFont:function(bw,bx){if(bx&&this.__jH&&this.__jL){this.__jH.removeListenerById(this.__jL);
this.__jL=null;
}var by;

if(bw){this.__jH=qx.theme.manager.Font.getInstance().resolve(bw);

if(this.__jH instanceof qx.bom.webfonts.WebFont){this.__jL=this.__jH.addListener(w,this._onWebFontStatusChange,this);
}by=this.__jH.getStyles();
}else{by=qx.bom.Font.getDefaultStyles();
}this.getContentElement().setStyles(by);
if(this.__lY){this.__mg().setStyles(by);
}if(bw){this.__me=qx.bom.Label.getTextSize(d,by);
}else{delete this.__me;
}qx.ui.core.queue.Layout.add(this);
},_applyTextColor:function(bz,bA){if(bz){this.getContentElement().setStyle(c,qx.theme.manager.Color.getInstance().resolve(bz));
}else{this.getContentElement().removeStyle(c);
}},tabFocus:function(){qx.ui.core.Widget.prototype.tabFocus.call(this);
this.selectAllText();
},_getTextSize:function(){return this.__me;
},_onHtmlInput:function(e){var bE=e.getData();
var bD=true;
this.__ma=false;
if(this.__md&&this.__md===bE){bD=false;
}if(this.getFilter()!=null){var bF=j;
var bB=bE.search(this.getFilter());
var bC=bE;

while(bB>=0){bF=bF+(bC.charAt(bB));
bC=bC.substring(bB+1,bC.length);
bB=bC.search(this.getFilter());
}
if(bF!=bE){bD=false;
bE=bF;
this.getContentElement().setValue(bE);
}}if(bE.length>this.getMaxLength()){bD=false;
this.getContentElement().setValue(bE.substr(0,this.getMaxLength()));
}if(bD){this.fireDataEvent(be,bE,this.__md);
this.__md=bE;
if(this.getLiveUpdate()){this.__mf(bE);
}}},_onWebFontStatusChange:function(bG){if(bG.getData().valid===true){var bH=this.__jH.getStyles();
this.__me=qx.bom.Label.getTextSize(d,bH);
qx.ui.core.queue.Layout.add(this);
}},__mf:function(bI){var bJ=this.__mc;
this.__mc=bI;

if(bJ!=bI){this.fireNonBubblingEvent(l,qx.event.type.Data,[bI,bJ]);
}},setValue:function(bK){if(bK===null){if(this.__ma){return bK;
}bK=j;
this.__ma=true;
}else{this.__ma=false;
if(this.__lY){this._removePlaceholder();
}}
if(qx.lang.Type.isString(bK)){var bM=this.getContentElement();

if(bK.length>this.getMaxLength()){bK=bK.substr(0,this.getMaxLength());
}
if(bM.getValue()!=bK){var bN=bM.getValue();
bM.setValue(bK);
var bL=this.__ma?null:bK;
this.__mc=bN;
this.__mf(bL);
}if(this.__lY){this._showPlaceholder();
}return bK;
}throw new Error("Invalid value type: "+bK);
},getValue:function(){var bO=this.getContentElement().getValue();
return this.__ma?null:bO;
},resetValue:function(){this.setValue(null);
},_onChangeContent:function(e){this.__ma=e.getData()===null;
this.__mf(e.getData());
},getTextSelection:function(){return this.getContentElement().getTextSelection();
},getTextSelectionLength:function(){return this.getContentElement().getTextSelectionLength();
},getTextSelectionStart:function(){return this.getContentElement().getTextSelectionStart();
},getTextSelectionEnd:function(){return this.getContentElement().getTextSelectionEnd();
},setTextSelection:function(bP,bQ){this.getContentElement().setTextSelection(bP,bQ);
},clearTextSelection:function(){this.getContentElement().clearTextSelection();
},selectAllText:function(){this.setTextSelection(0);
},_showPlaceholder:function(){var bS=this.getValue()||j;
var bR=this.getPlaceholder();

if(bR!=null&&bS==j&&!this.hasState(C)&&!this.hasState(R)){if(this.hasState(k)){this._syncPlaceholder();
}else{this.addState(k);
}}},_removePlaceholder:function(){if(this.hasState(k)){this.__mg().setStyle(bc,X);
this.removeState(k);
}},_syncPlaceholder:function(){if(this.hasState(k)){this.__mg().setStyle(bc,G);
}},__mg:function(){if(this.__mb==null){this.__mb=new qx.html.Label();
var bT=qx.theme.manager.Color.getInstance();
this.__mb.setStyles({"visibility":X,"zIndex":6,"position":W,"color":bT.resolve(O)});
this.getContainerElement().add(this.__mb);
}return this.__mb;
},_onChangeLocale:qx.core.Environment.select(g,{"true":function(e){var content=this.getPlaceholder();

if(content&&content.translate){this.setPlaceholder(content.translate());
}},"false":null}),_applyPlaceholder:function(bU,bV){if(this.__lY){this.__mg().setValue(bU);

if(bU!=null){this.addListener(bd,this._removePlaceholder,this);
this.addListener(ba,this._showPlaceholder,this);
this._showPlaceholder();
}else{this.removeListener(bd,this._removePlaceholder,this);
this.removeListener(ba,this._showPlaceholder,this);
this._removePlaceholder();
}}else{if(this.getEnabled()){this.getContentElement().setAttribute(bf,bU);
}}},_applyTextAlign:function(bW,bX){this.getContentElement().setStyle(E,bW);
},_applyReadOnly:function(bY,ca){var cb=this.getContentElement();
cb.setAttribute(V,bY);

if(bY){this.addState(a);
this.setFocusable(false);
}else{this.removeState(a);
this.setFocusable(true);
}}},destruct:function(){this.__mb=this.__jH=null;

if(qx.core.Environment.get(g)){qx.locale.Manager.getInstance().removeListener(Y,this._onChangeLocale,this);
}
if(this.__jH&&this.__jL){this.__jH.removeListenerById(this.__jL);
}}});
})();
(function(){var n="wrap",m="value",l="textarea",k="engine.name",j="none",i="",h="overflow",g="input",f="qx.html.Input",e="select",b="disabled",d="read-only",c="overflowX",a="overflowY";
qx.Class.define(f,{extend:qx.html.Element,construct:function(o,p,q){if(o===e||o===l){var r=o;
}else{r=g;
}qx.html.Element.call(this,r,p,q);
this.__mh=o;
},members:{__mh:null,__mi:null,__mj:null,_createDomElement:function(){return qx.bom.Input.create(this.__mh);
},_applyProperty:function(name,s){qx.html.Element.prototype._applyProperty.call(this,name,s);
var t=this.getDomElement();

if(name===m){qx.bom.Input.setValue(t,s);
}else if(name===n){qx.bom.Input.setWrap(t,s);
this.setStyle(h,t.style.overflow,true);
this.setStyle(c,t.style.overflowX,true);
this.setStyle(a,t.style.overflowY,true);
}},setEnabled:qx.core.Environment.select(k,{"webkit":function(u){this.__mj=u;

if(!u){this.setStyles({"userModify":d,"userSelect":j});
}else{this.setStyles({"userModify":null,"userSelect":this.__mi?null:j});
}},"default":function(v){this.setAttribute(b,v===false);
}}),setSelectable:qx.core.Environment.select(k,{"webkit":function(w){this.__mi=w;
qx.html.Element.prototype.setSelectable.call(this,this.__mj&&w);
},"default":function(x){qx.html.Element.prototype.setSelectable.call(this,x);
}}),setValue:function(y){var z=this.getDomElement();

if(z){if(z.value!=y){qx.bom.Input.setValue(z,y);
}}else{this._setProperty(m,y);
}return this;
},getValue:function(){var A=this.getDomElement();

if(A){return qx.bom.Input.getValue(A);
}return this._getProperty(m)||i;
},setWrap:function(B,C){if(this.__mh===l){this._setProperty(n,B,C);
}else{throw new Error("Text wrapping is only support by textareas!");
}return this;
},getWrap:function(){if(this.__mh===l){return this._getProperty(n);
}else{throw new Error("Text wrapping is only support by textareas!");
}}}});
})();
(function(){var m="input",k="engine.name",j="change",h="text",g="password",f="engine.version",d="radio",c="textarea",b="checkbox",a="keypress",A="browser.documentmode",z="opera",y="keyup",x="mshtml",w="blur",v="keydown",u="propertychange",t="browser.version",s="select-multiple",r="value",p="select",q="qx.event.handler.Input",n="checked";
qx.Class.define(q,{extend:qx.core.Object,implement:qx.event.IEventHandler,construct:function(){qx.core.Object.call(this);
this._onChangeCheckedWrapper=qx.lang.Function.listener(this._onChangeChecked,this);
this._onChangeValueWrapper=qx.lang.Function.listener(this._onChangeValue,this);
this._onInputWrapper=qx.lang.Function.listener(this._onInput,this);
this._onPropertyWrapper=qx.lang.Function.listener(this._onProperty,this);
if((qx.core.Environment.get(k)==z)){this._onKeyDownWrapper=qx.lang.Function.listener(this._onKeyDown,this);
this._onKeyUpWrapper=qx.lang.Function.listener(this._onKeyUp,this);
this._onBlurWrapper=qx.lang.Function.listener(this._onBlur,this);
}},statics:{PRIORITY:qx.event.Registration.PRIORITY_NORMAL,SUPPORTED_TYPES:{input:1,change:1},TARGET_CHECK:qx.event.IEventHandler.TARGET_DOMNODE,IGNORE_CAN_HANDLE:false},members:{__mk:false,__ml:null,__mc:null,__md:null,canHandleEvent:function(B,C){var D=B.tagName.toLowerCase();

if(C===m&&(D===m||D===c)){return true;
}
if(C===j&&(D===m||D===c||D===p)){return true;
}return false;
},registerEvent:function(E,F,G){if(qx.core.Environment.get(k)==x&&(qx.core.Environment.get(f)<9||(qx.core.Environment.get(f)>=9&&qx.core.Environment.get(A)<9))){if(!E.__mm){var H=E.tagName.toLowerCase();
var I=E.type;

if(I===h||I===g||H===c||I===b||I===d){qx.bom.Event.addNativeListener(E,u,this._onPropertyWrapper);
}
if(I!==b&&I!==d){qx.bom.Event.addNativeListener(E,j,this._onChangeValueWrapper);
}
if(I===h||I===g){this._onKeyPressWrapped=qx.lang.Function.listener(this._onKeyPress,this,E);
qx.bom.Event.addNativeListener(E,a,this._onKeyPressWrapped);
}E.__mm=true;
}}else{if(F===m){this.__mn(E);
}else if(F===j){if(E.type===d||E.type===b){qx.bom.Event.addNativeListener(E,j,this._onChangeCheckedWrapper);
}else{qx.bom.Event.addNativeListener(E,j,this._onChangeValueWrapper);
}if((qx.core.Environment.get(k)==z)||(qx.core.Environment.get(k)==x)){if(E.type===h||E.type===g){this._onKeyPressWrapped=qx.lang.Function.listener(this._onKeyPress,this,E);
qx.bom.Event.addNativeListener(E,a,this._onKeyPressWrapped);
}}}}},__mn:qx.core.Environment.select(k,{"mshtml":function(J){if(qx.core.Environment.get(f)>=9&&qx.core.Environment.get(A)>=9){qx.bom.Event.addNativeListener(J,m,this._onInputWrapper);

if(J.type===h||J.type===g){this._inputFixWrapper=qx.lang.Function.listener(this._inputFix,this,J);
qx.bom.Event.addNativeListener(J,y,this._inputFixWrapper);
}}},"webkit":function(K){var L=K.tagName.toLowerCase();
if(parseFloat(qx.core.Environment.get(f))<532&&L==c){qx.bom.Event.addNativeListener(K,a,this._onInputWrapper);
}qx.bom.Event.addNativeListener(K,m,this._onInputWrapper);
},"opera":function(M){qx.bom.Event.addNativeListener(M,y,this._onKeyUpWrapper);
qx.bom.Event.addNativeListener(M,v,this._onKeyDownWrapper);
qx.bom.Event.addNativeListener(M,w,this._onBlurWrapper);
qx.bom.Event.addNativeListener(M,m,this._onInputWrapper);
},"default":function(N){qx.bom.Event.addNativeListener(N,m,this._onInputWrapper);
}}),unregisterEvent:function(O,P){if(qx.core.Environment.get(k)==x&&qx.core.Environment.get(f)<9&&qx.core.Environment.get(A)<9){if(O.__mm){var Q=O.tagName.toLowerCase();
var R=O.type;

if(R===h||R===g||Q===c||R===b||R===d){qx.bom.Event.removeNativeListener(O,u,this._onPropertyWrapper);
}
if(R!==b&&R!==d){qx.bom.Event.removeNativeListener(O,j,this._onChangeValueWrapper);
}
if(R===h||R===g){qx.bom.Event.removeNativeListener(O,a,this._onKeyPressWrapped);
}
try{delete O.__mm;
}catch(S){O.__mm=null;
}}}else{if(P===m){this.__mo(O);
}else if(P===j){if(O.type===d||O.type===b){qx.bom.Event.removeNativeListener(O,j,this._onChangeCheckedWrapper);
}else{qx.bom.Event.removeNativeListener(O,j,this._onChangeValueWrapper);
}}
if((qx.core.Environment.get(k)==z)||(qx.core.Environment.get(k)==x)){if(O.type===h||O.type===g){qx.bom.Event.removeNativeListener(O,a,this._onKeyPressWrapped);
}}}},__mo:qx.core.Environment.select(k,{"mshtml":function(T){if(qx.core.Environment.get(f)>=9&&qx.core.Environment.get(A)>=9){qx.bom.Event.removeNativeListener(T,m,this._onInputWrapper);

if(T.type===h||T.type===g){qx.bom.Event.removeNativeListener(T,y,this._inputFixWrapper);
}}},"webkit":function(U){var V=U.tagName.toLowerCase();
if(parseFloat(qx.core.Environment.get(f))<532&&V==c){qx.bom.Event.removeNativeListener(U,a,this._onInputWrapper);
}qx.bom.Event.removeNativeListener(U,m,this._onInputWrapper);
},"opera":function(W){qx.bom.Event.removeNativeListener(W,y,this._onKeyUpWrapper);
qx.bom.Event.removeNativeListener(W,v,this._onKeyDownWrapper);
qx.bom.Event.removeNativeListener(W,w,this._onBlurWrapper);
qx.bom.Event.removeNativeListener(W,m,this._onInputWrapper);
},"default":function(X){qx.bom.Event.removeNativeListener(X,m,this._onInputWrapper);
}}),_onKeyPress:qx.core.Environment.select(k,{"mshtml|opera":function(e,Y){if(e.keyCode===13){if(Y.value!==this.__mc){this.__mc=Y.value;
qx.event.Registration.fireEvent(Y,j,qx.event.type.Data,[Y.value]);
}}},"default":null}),_inputFix:qx.core.Environment.select(k,{"mshtml":function(e,ba){if(e.keyCode===46||e.keyCode===8){if(ba.value!==this.__md){this.__md=ba.value;
qx.event.Registration.fireEvent(ba,m,qx.event.type.Data,[ba.value]);
}}},"default":null}),_onKeyDown:qx.core.Environment.select(k,{"opera":function(e){if(e.keyCode===13){this.__mk=true;
}},"default":null}),_onKeyUp:qx.core.Environment.select(k,{"opera":function(e){if(e.keyCode===13){this.__mk=false;
}},"default":null}),_onBlur:qx.core.Environment.select(k,{"opera":function(e){if(this.__ml&&qx.core.Environment.get(t)<10.6){window.clearTimeout(this.__ml);
}},"default":null}),_onInput:qx.event.GlobalError.observeMethod(function(e){var bc=qx.bom.Event.getTarget(e);
var bb=bc.tagName.toLowerCase();
if(!this.__mk||bb!==m){if((qx.core.Environment.get(k)==z)&&qx.core.Environment.get(t)<10.6){this.__ml=window.setTimeout(function(){qx.event.Registration.fireEvent(bc,m,qx.event.type.Data,[bc.value]);
},0);
}else{qx.event.Registration.fireEvent(bc,m,qx.event.type.Data,[bc.value]);
}}}),_onChangeValue:qx.event.GlobalError.observeMethod(function(e){var be=qx.bom.Event.getTarget(e);
var bd=be.value;

if(be.type===s){var bd=[];

for(var i=0,o=be.options,l=o.length;i<l;i++){if(o[i].selected){bd.push(o[i].value);
}}}qx.event.Registration.fireEvent(be,j,qx.event.type.Data,[bd]);
}),_onChangeChecked:qx.event.GlobalError.observeMethod(function(e){var bf=qx.bom.Event.getTarget(e);

if(bf.type===d){if(bf.checked){qx.event.Registration.fireEvent(bf,j,qx.event.type.Data,[bf.value]);
}}else{qx.event.Registration.fireEvent(bf,j,qx.event.type.Data,[bf.checked]);
}}),_onProperty:qx.core.Environment.select(k,{"mshtml":qx.event.GlobalError.observeMethod(function(e){var bg=qx.bom.Event.getTarget(e);
var bh=e.propertyName;

if(bh===r&&(bg.type===h||bg.type===g||bg.tagName.toLowerCase()===c)){if(!bg.$$inValueSet){qx.event.Registration.fireEvent(bg,m,qx.event.type.Data,[bg.value]);
}}else if(bh===n){if(bg.type===b){qx.event.Registration.fireEvent(bg,j,qx.event.type.Data,[bg.checked]);
}else if(bg.checked){qx.event.Registration.fireEvent(bg,j,qx.event.type.Data,[bg.value]);
}}}),"default":function(){}})},defer:function(bi){qx.event.Registration.addHandler(bi);
}});
})();
(function(){var v="",u="select",t="engine.name",s="soft",r="off",q="textarea",p="auto",o="wrap",n="text",m="mshtml",d="number",k="checkbox",g="select-one",c="input",b="option",f="value",e="radio",h="qx.bom.Input",a="nowrap",j="normal";
qx.Class.define(h,{statics:{__gV:{text:1,textarea:1,select:1,checkbox:1,radio:1,password:1,hidden:1,submit:1,image:1,file:1,search:1,reset:1,button:1},create:function(w,x,y){var x=x?qx.lang.Object.clone(x):{};
var z;

if(w===q||w===u){z=w;
}else{z=c;
x.type=w;
}return qx.bom.Element.create(z,x,y);
},setValue:function(A,B){var G=A.nodeName.toLowerCase();
var D=A.type;
var Array=qx.lang.Array;
var H=qx.lang.Type;

if(typeof B===d){B+=v;
}
if((D===k||D===e)){if(H.isArray(B)){A.checked=Array.contains(B,A.value);
}else{A.checked=A.value==B;
}}else if(G===u){var C=H.isArray(B);
var I=A.options;
var E,F;

for(var i=0,l=I.length;i<l;i++){E=I[i];
F=E.getAttribute(f);

if(F==null){F=E.text;
}E.selected=C?Array.contains(B,F):B==F;
}
if(C&&B.length==0){A.selectedIndex=-1;
}}else if((D===n||D===q)&&(qx.core.Environment.get(t)==m)){A.$$inValueSet=true;
A.value=B;
A.$$inValueSet=null;
}else{A.value=B;
}},getValue:function(J){var P=J.nodeName.toLowerCase();

if(P===b){return (J.attributes.value||{}).specified?J.value:J.text;
}
if(P===u){var K=J.selectedIndex;
if(K<0){return null;
}var Q=[];
var S=J.options;
var R=J.type==g;
var O=qx.bom.Input;
var N;
for(var i=R?K:0,M=R?K+1:S.length;i<M;i++){var L=S[i];

if(L.selected){N=O.getValue(L);
if(R){return N;
}Q.push(N);
}}return Q;
}else{return (J.value||v).replace(/\r/g,v);
}},setWrap:qx.core.Environment.select(t,{"mshtml":function(T,U){var W=U?s:r;
var V=U?p:v;
T.wrap=W;
T.style.overflowY=V;
},"gecko|webkit":function(X,Y){var bb=Y?s:r;
var ba=Y?v:p;
X.setAttribute(o,bb);
X.style.overflow=ba;
},"default":function(bc,bd){bc.style.whiteSpace=bd?j:a;
}})}});
})();
(function(){var f="mshtml",e="engine.name",d="qx.ui.form.TextField",c='px',b="textfield",a="engine.version";
qx.Class.define(d,{extend:qx.ui.form.AbstractField,properties:{appearance:{refine:true,init:b},allowGrowY:{refine:true,init:false},allowShrinkY:{refine:true,init:false}},members:{_renderContentElement:function(innerHeight,g){if((qx.core.Environment.get(e)==f)&&qx.core.Environment.get(a)<9){g.setStyles({"line-height":innerHeight+c});
}}}});
})();
(function(){var n="ipod",m="g",l="xbox",k="pc",j="\.",i="(",h=")",g="iPhone",f="|",e="qx.bom.client.Device",b="wii",d="ipad",c="device.name",a="ds";
qx.Bootstrap.define(e,{statics:{__cR:{"iPod":n,"iPad":d,"iPhone":g,"PSP":"psp","PLAYSTATION 3":"ps3","Nintendo Wii":b,"Nintendo DS":a,"XBOX":"xbox","Xbox":l},getName:function(){var q=[];

for(var p in this.__cR){q.push(p);
}var r=new RegExp(i+q.join(f).replace(/\./g,j)+h,m);
var o=r.exec(navigator.userAgent);

if(o&&o[1]){return qx.bom.client.Device.__cR[o[1]];
}return k;
}},defer:function(s){qx.core.Environment.add(c,s.getName);
}});
})();
(function(){var s="updateBuddy",r="loginDone",q="statisticWindow.enabled",p="userAdminWindow.enabled",o="logoutPre",n="trackConfigWindow.enabled",m="statisticWindow.open",l="reportPrintWindow.enabled",k="adminDeviceWindow.enabled",j="track.util.WindowManager",c="popupPoiReportWindow: ",h="deviceConfigWindow.enabled",g="rulesWindow.enabled",b="geofenceWindow.enabled",a="buddyConfigWindow.enabled",f="alarmWindow.enabled",d="replicationWindow.enabled";
qx.Class.define(j,{extend:qx.core.Object,construct:function(t){qx.core.Object.call(this);
this.trackGui=t;
this.rulesWindow=null;
this.statisticWindow=null;
this.geofenceWindow=null;
this.testDeviceWindow=null;
this.userAdminWindow=null;
this.poiReportWindow=null;
this.poiConfigWindow=null;
this.replicationWindow=null;
this.registerListeners();
},members:{registerListeners:function(){this.loginDoneListenerFunc=this.trackGui.getEventManager().addListener(r,function(u){this.onLoginDone();
},this);
this.logoutPreListenerFunc=null;
},onLoginDone:function(){if(this.updateBuddyListenerFunc==null){this.updateBuddyListenerFunc=this.trackGui.watchee.getBuddyManager().getEventManager().addListener(s,function(v){var x=v.getData().buddyTO;
var w=x.getLoginName();
},this);
}
if(xbProperties.getBoolean(m,false)==true){this.popupStatisticWindow();
}},findBuddyConfigWindow:function(y){var z=this.trackGui.getMyRoot().getChildren();

for(var i=0;i<z.length;i++){if(z[i] instanceof track.buddy.BuddyWindow){if(z[i].getBuddyTO().getLoginName()==y){return z[i];
}}}return null;
},clearBuddyConfigWindow:function(A){var B=this.findBuddyConfigWindow(A);

if(B!=null){try{B.hide();
B.destroyPopup();
}catch(C){this.error("clearBuddyConfigWindow("+A+") failed:"+C);
B=null;
}}},clearAllBuddyConfigWindow:function(){var D=this.trackGui.getMyRoot();
var E=D.getChildren();

for(var i=0;i<E.length;i++){if(E[i] instanceof track.buddy.BuddyWindow){E[i].destroyPopup();
}}},popupBuddyConfigWindow:function(F){if(xbProperties.getBoolean(a,true)==false){return null;
}var G=this.findBuddyConfigWindow(F.getLoginName());

if(G==null){G=new track.buddy.BuddyWindow(this.trackGui,F);
G.createBuddyConfigWindow();
}else{G.open();
}G.focus();
return G;
},findReportPrintWindow:function(H){var I=this.trackGui.getMyRoot().getChildren();

for(var i=0;i<I.length;i++){if(I[i] instanceof track.poiprint.ReportPrintWindow){if(I[i].getWindowId()==H){return I[i];
}}}return null;
},clearReportPrintWindow:function(J){var K=this.findReportPrintWindow(J);

if(K!=null){try{K.hide();
K.destroyPopup();
}catch(L){this.error("clearReportPrintWindow("+J+") failed:"+L);
K=null;
}}},clearAllReportPrintWindow:function(){var M=this.trackGui.getMyRoot();
var N=M.getChildren();

for(var i=0;i<N.length;i++){if(N[i] instanceof track.poiprint.ReportPrintWindow){N[i].destroyPopup();
}}},popupReportPrintWindow:function(O,P){if(xbProperties.getBoolean(l,true)==false){return null;
}var Q=this.findReportPrintWindow(O.getTitle());

if(Q==null){Q=new track.poiprint.ReportPrintWindow(this.trackGui,O);
Q.create(P);
Q.open();
Q.moveTo(200,70);
}else{Q.open();
}Q.focus();
return Q;
},findTrackConfigWindow:function(R){var S=this.trackGui.getMyRoot().getChildren();

for(var i=0;i<S.length;i++){if(S[i] instanceof track.trackconf.TrackConfigWindow){if(S[i].getBuddyTO().getLoginName()==R){return S[i];
}}}return null;
},clearTrackConfigWindow:function(T){var U=this.findTrackConfigWindow(T);

if(U!=null){try{U.hide();
U.destroyPopup();
}catch(V){this.error("clearTrackConfigWindow("+T+") failed:"+V);
U=null;
}}},clearAllTrackConfigWindow:function(){var W=this.trackGui.getMyRoot();
var X=W.getChildren();

for(var i=0;i<X.length;i++){if(X[i] instanceof track.trackconf.TrackConfigWindow){X[i].destroyPopup();
}}},popupTrackConfigWindow:function(Y,ba){if(xbProperties.getBoolean(n,true)==false){return null;
}var bb=this.findTrackConfigWindow(Y.getLoginName());

if(bb==null){bb=new track.trackconf.TrackConfigWindow(this.trackGui,Y,ba);
bb.createTrackConfigWindow();
}else{bb.open();
}bb.focus();
return bb;
},findDeviceConfigWindow:function(bc){var bd=this.trackGui.getMyRoot().getChildren();

for(var i=0;i<bd.length;i++){if(bd[i] instanceof track.deviceconf.DeviceWindow){if(bd[i].getBuddyTO().getLoginName()==bc){return bd[i];
}}}return null;
},popupDeviceConfigWindow:function(be){if(xbProperties.getBoolean(h,true)==false){return null;
}var bf=this.findDeviceConfigWindow(be.getLoginName());

if(bf==null){bf=new track.deviceconf.DeviceWindow(this.trackGui,be);
bf.createDeviceWindow();
}else{bf.open();
bf.focus();
}return bf;
},clearAllDeviceConfigWindow:function(){var bg=this.trackGui.getMyRoot().getChildren();

for(var i=0;i<bg.length;i++){if(bg[i] instanceof track.deviceconf.DeviceWindow){bg[i].destroyPopup();
}}},popupRulesWindow:function(bh,bi,bj,bk,bl){var bh=bh||null;
var bi=bi||null;
var bj=bj||null;
var bk=bk||null;
var bl=bl||false;

if(xbProperties.getBoolean(g,true)==false){return null;
}
if(this.rulesWindow==null){this.rulesWindow=new track.rules.RulesWindow(this.trackGui);
this.rulesWindow.createRulesWindow(bh);
}var bm=this.rulesWindow.setSpecificDevice(bh,bi,bj,bk);

if(bl||bm){this.rulesWindow.open();
this.rulesWindow.focus();
return this.rulesWindow;
}return null;
},clearRulesWindow:function(bn){if(this.rulesWindow!=null){this.rulesWindow.destroyPopup();
this.rulesWindow=null;
}},popupStatisticWindow:function(bo){if(xbProperties.getBoolean(q,true)==false){return null;
}var bo=bo||null;

if(this.statisticWindow==null){this.statisticWindow=new track.statistic.StatisticWindow(this.trackGui);
this.statisticWindow.createStatisticWindow(bo);
}var bp=true;

if(bp){this.statisticWindow.open();
this.statisticWindow.focus();
this.statisticWindow.onPostOpen();
return this.statisticWindow;
}return null;
},clearStatisticWindow:function(bq){if(this.statisticWindow!=null){this.statisticWindow.destroyPopup();
this.statisticWindow=null;
}},popupPoiReportWindow:function(){if(this.poiReportWindow==null){try{this.poiReportWindow=new track.poi.PoiReportWindow(this.trackGui);
this.poiReportWindow.create();
this.poiReportWindow.position();
}catch(e){this.trackGui.errorMsgBoxDeveloper(c+e);
return null;
}}var br=true;

if(br){this.poiReportWindow.open();
this.poiReportWindow.focus();
return this.poiReportWindow;
}return null;
},clearPoiReportWindow:function(){if(this.poiReportWindow!=null){this.poiReportWindow.destroyPopup();
this.poiReportWindow=null;
}},popupPoiConfigWindow:function(){if(this.poiConfigWindow==null){try{this.poiConfigWindow=new track.poiconfig.PoiConfigWindow(this.trackGui);
}catch(e){this.error("Failed new track.poiconfig.PoiConfigWindow: "+e);
}
try{this.poiConfigWindow.create();
}catch(e){this.error("Failed track.poiconfig.PoiConfigWindow.create: "+e);
}this.poiConfigWindow.moveTo(400,70);
}var bs=true;

if(bs){this.poiConfigWindow.open();
this.poiConfigWindow.focus();
return this.poiConfigWindow;
}return null;
},clearPoiConfigWindow:function(){if(this.poiConfigWindow!=null){this.poiConfigWindow.destroyPopup();
this.poiConfigWindow=null;
}},popupGeofenceWindow:function(){if(xbProperties.getBoolean(b,true)==false){return null;
}
if(this.geofenceWindow!=null){this.clearGeofenceWindow();
}
if(this.geofenceWindow==null){this.geofenceWindow=new track.geofence.GeofenceWindow(this.trackGui);
}this.geofenceWindow.createGeofenceWindow();
this.geofenceWindow.open();
this.geofenceWindow.focus();
return this.geofenceWindow;
},clearGeofenceWindow:function(){if(this.geofenceWindow!=null){this.geofenceWindow.destroyPopup();
this.geofenceWindow=null;
}},findAlarmWindow:function(bt){var bu=this.trackGui.getMyRoot().getChildren();

for(var i=0;i<bu.length;i++){if(bu[i] instanceof track.alarm.AlarmWindow){if(bu[i].getBuddyTO().getLoginName()==bt){return bu[i];
}}}return null;
},clearAlarmWindow:function(bv){var bw=this.findAlarmWindow(bv);

if(bw!=null){try{bw.hide();
bw.destroyPopup();
}catch(bx){this.error("clearAlarmWindow("+bv+") failed:"+bx);
bw=null;
}}},clearAllAlarmWindow:function(){var by=this.trackGui.getMyRoot();
var bz=by.getChildren();

for(var i=0;i<bz.length;i++){if(bz[i] instanceof track.alarm.AlarmWindow){bz[i].destroyPopup();
}}},popupAlarmWindow:function(bA){if(xbProperties.getBoolean(f,true)==false){return null;
}var bB=this.findAlarmWindow(bA.getLoginName());

if(bB==null){bB=new track.alarm.AlarmWindow(this.trackGui,bA);
bB.createAlarmWindow();

if(bB.onPreOpen()==false)return null;
}else{if(bB.onPreOpen()==false)return null;
bB.open();
}bB.focus();
return bB;
},popupTestDeviceWindow:function(bC){if(xbProperties.getBoolean(k,true)==false){return null;
}
if(!org.xmlBlaster.util.isDefined(bC))bC=null;

if(this.testDeviceWindow==null){this.testDeviceWindow=new track.admin.TestDeviceWindow(this.trackGui);
this.testDeviceWindow.showForm(bC);
}this.testDeviceWindow.initForDeviceId(bC);
this.testDeviceWindow.window.open();
this.testDeviceWindow.window.focus();
return this.testDeviceWindow;
},clearTestDeviceWindow:function(bD){if(this.testDeviceWindow!=null){this.testDeviceWindow.destroyPopup();
this.testDeviceWindow=null;
}},popupUserAdminWindow:function(){if(xbProperties.getBoolean(p,true)==false){return null;
}
if(this.userAdminWindow==null){this.userAdminWindow=new track.admin.account.UserAdminWindow(this.trackGui);
this.userAdminWindow.createWindow();
}
if(this.userAdminWindow.onPreOpen()==false)return null;
this.userAdminWindow.open();
this.userAdminWindow.focus();
return this.userAdminWindow;
},clearUserAdminWindow:function(bE){if(this.userAdminWindow!=null){this.userAdminWindow.destroyPopup();
this.userAdminWindow=null;
}},popupReplicationWindow:function(){if(xbProperties.getBoolean(d,true)==false){return null;
}
if(this.replicationWindow==null){this.replicationWindow=new track.admin.replication.ReplicationWindow(this.trackGui);
this.replicationWindow.createWindow();
}
if(this.replicationWindow.onPreOpen()==false)return null;
this.replicationWindow.open();
this.replicationWindow.focus();
return this.replicationWindow;
},clearReplicationWindow:function(bF){if(this.replicationWindow!=null){this.replicationWindow.destroyPopup();
this.replicationWindow=null;
}},clearAllWindows:function(bG){this.clearAllBuddyConfigWindow();
this.clearAllTrackConfigWindow();
this.clearAllDeviceConfigWindow();
this.clearRulesWindow();
this.clearStatisticWindow();
this.clearPoiReportWindow();
this.clearPoiConfigWindow();
this.clearGeofenceWindow();
this.clearAllAlarmWindow();
this.clearTestDeviceWindow();
this.clearUserAdminWindow();
this.clearReplicationWindow();
},clear:function(){if(this.loginDoneListenerFunc!=null){this.trackGui.getEventManager().removeListener(r,this.loginDoneListenerFunc);
this.loginDoneListenerFunc=null;
}
if(this.logoutPreListenerFunc!=null){this.trackGui.getEventManager().removeListener(o,this.logoutPreListenerFunc);
this.logoutPreListenerFunc=null;
}
if(this.updateBuddyListenerFunc!=null){if(this.trackGui.watchee!=null){this.trackGui.watchee.getBuddyManager().getEventManager().removeListener(s,this.updateBuddyListenerFunc);
}this.updateBuddyListenerFunc=null;
}this.clearAllWindows(null);
}},destruct:function(){this._disposeFields();
this._disposeObjects();
}});
})();
(function(){var k="help-button",j="/",i="helpUrl",h="http://",g="Boolean",f="en",d="execute",c="track.util.WindowWithHelpIcon",b=".html",a="windowHelpIcon.show",y="http://gpsvision.de/portalhelp",x="captionbar",w="url",v="",u="http://watchee.net/portalhelp",t="_",s="watcheewindow/help-button",r="watcheewindow",q="Please watch the short 'one minute' help videos!",p="Help",n="tooltip",o="https://",l=".",m="_applyCaptionBarChange";
qx.Class.define(c,{extend:qx.ui.window.Window,construct:function(z,A,B){qx.ui.window.Window.call(this);

if(B!==undefined&&B!=null){this.trackGui=B;
}this.setShowMinimize(false);
this.setShowMaximize(false);
this.setContentPadding(2);
this.setUseMoveFrame(true);
this.setResizable(false);
this.setLayout(new qx.ui.layout.VBox(2));
},properties:{showHelp:{check:g,init:xbProperties.getBoolean(a,true),apply:m,themeable:true},appearance:{refine:true,init:r}},members:{_createChildControlImpl:function(C,D){var E;

switch(C){case k:E=new qx.ui.form.Button();
E.setFocusable(false);
E.addListener(d,this._onHelpButtonClick,this);
E.setAppearance(s);
E.setToolTipText(this.trc(n,q));
this.getChildControl(x).add(E,{row:0,column:5});
break;
}return E||qx.ui.window.Window.prototype._createChildControlImpl.call(this,C);
},_updateCaptionBar:function(){if(this.getShowHelp()){this._showChildControl(k);
}else{this._excludeChildControl(k);
}qx.ui.window.Window.prototype._updateCaptionBar.call(this);
},_applyCaptionBarChange:function(F,G){this._updateCaptionBar();
},_onHelpButtonClick:function(e){var name=this.classname;
var L=name.lastIndexOf(l);
var J=name.substring(L+1);
var I=qx.locale.Manager.getInstance().getLocale();

if(I==null||I==v)I=f;
var H=I.indexOf(t);

if(H!=-1){I=I.substring(0,H);
}var K=y;

if(isWatchee){K=u;
}if(this.trackGui!=undefined&&this.trackGui!=null){K=this.trackGui.getMyOemProperty(i,K);
}K=xbProperties.getStrFrom(w,i,K);

if(K.toLowerCase().indexOf(h)==-1&&K.toLowerCase().indexOf(o)==-1){K=h+K;
}
if(K.length>0&&K.charAt(K.length-1)!=j){K+=j;
}K+=I+j+J+b;
this.info(K);
window.open(K,p);
this.getChildControl(k).reset();
}}});
})();
(function(){var o="%1",n="window title",m="updateBuddy",l="changeAccount",k="window text",j="updateFriendOf",i="16/apps/preferences-users.png",h="Here you can configure your buddy %1 and give permissions",g="accountConfigTab.show",f="permissionTab.show",c="track.buddy.BuddyWindow",e="Here you can configure your account",d="addBuddyTab.show";
var b=50;
var a=150;
qx.Class.define(c,{extend:track.util.WindowWithHelpIcon,construct:function(p,q){track.util.WindowWithHelpIcon.call(this);
this.buddyTO=q;
this.setCaption(this.trc(n,o,this.buddyTO.getAliasAndLoginName()));
this.setIcon(xbGetQxIcon(i));
this.trackGui=p;
this.log=this.trackGui.getLogger();
this.trackDisplayTab=null;
this.permissionTab=null;
this.initialize();
},members:{initialize:function(){var r=this.buddyTO.getDevice();
this.changeAccountListenerFunc=this.trackGui.watchee.getBuddyManager().getEventManager().addListener(l,function(s){if(this.buddyTO==null||s==null||s.getData()==null||s.getData().buddyTO==null){this.error("BuddyWindows.js: this.buddyTO==null in changeAccount, why?");
return;
}
if(s.getData().buddyTO.getLoginName()==this.buddyTO.getLoginName())this.setCaption(this.trc(n,o,this.buddyTO.getAliasAndLoginName()));
},this);
this.updateFriendOfListenerFunc=this.trackGui.watchee.getBuddyManager().getEventManager().addListener(j,function(t){if(this.buddyTO==null||t==null||t.getData()==null||t.getData().buddyTO==null||this.buddyTO.getLoginName()!=t.getData().buddyTO.getLoginName())return;
this.log.info("BuddyConfigWindow: Received 'updateFriendOf' event for "+this.buddyTO.getLoginName());

if(this.permissionTab!=null)this.permissionTab.updatePermissionGotCheckBoxes();
},this);
this.updateBuddyFunc=this.trackGui.watchee.getBuddyManager().getEventManager().addListener(m,function(u){if(this.buddyTO==null||u==null||u.getData()==null||u.getData().buddyTO==null||this.buddyTO.getLoginName()!=u.getData().buddyTO.getLoginName())return;
this.buddyTO=u.getData().buddyTO;
this.log.info("BuddyConfigWindow: Received 'updateBuddy' event for "+this.buddyTO.getLoginName());
this.header.setValue(this.getHeaderText());
this.setCaption(this.trc(n,o,this.buddyTO.getAliasAndLoginName()));

if(this.accountConfigTab!=null){this.accountConfigTab.buddyTOChanged(this.buddyTO);
}
if(this.permissionTab!=null)this.permissionTab.updatePermissionGrantedCheckBoxes();
},this);
this.addBuddyTab=null;
this.showAddBuddyTab=this.buddyTO.isCurrentLoginAccount()?true:false;
this.accountConfigTab=null;
},getBuddyTO:function(){return this.buddyTO;
},getBuddyConfigWindowTop:function(){if(b>200)b=50;
b+=25;
return b;
},getBuddyConfigWindowLeft:function(){if(a>350)a=150;
a+=25;
return a;
},getHeaderText:function(){var v=(this.buddyTO.isCurrentLoginAccount())?(this.trc(k,e)):(this.trc(k,h,this.buddyTO.getAliasAndLoginName()));
return v;
},createBuddyConfigWindow:function(){this.moveTo(this.getBuddyConfigWindowLeft(),this.getBuddyConfigWindowTop());
this.header=new qx.ui.basic.Label(this.getHeaderText());
this.header.setRich(true);
this.add(this.header);
this.tabView=new track.util.EnhancedTabView();

if(xbProperties.getBoolean(g,true)){if(this.buddyTO.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_CFG)){this.accountConfigTab=new track.buddy.AccountConfigTab(this);
this.accountConfigTab.createTab(this.tabView);
}}
if(xbProperties.getBoolean(f,true)){var w=(this.buddyTO.isCurrentLoginAccount())?false:true;

if(w){this.permissionTab=new track.buddy.PermissionTab(this);
this.permissionTab.createTab(this.tabView);
}}
if(xbProperties.getBoolean(d,true)){if(this.showAddBuddyTab){this.addBuddyTab=new track.buddy.AddBuddyTab(this);
this.addBuddyTab.createTab(this.tabView);
}}this.add(this.tabView);
this.trackGui.getMyRoot().add(this);
this.open();
},checkTabPermissions:function(){if(this.permissionTab!=null&&this.permissionTab.tabviewPage!=null)this.tabView.setSelection([this.permissionTab.tabviewPage]);
},destroyPopup:function(){this.trackGui.getMyRoot().remove(this);
this.close();

if(this.trackGui==null)return;
this.log.info("destruct BuddyWindow "+this.getBuddyTO().getLoginName());

if(this.changeAccountListenerFunc!=null)this.trackGui.watchee.getBuddyManager().getEventManager().removeListener(l,this.changeAccountListenerFunc);
this.changeAccountListenerFunc=null;

if(this.updateFriendOfListenerFunc!=null)this.trackGui.watchee.getBuddyManager().getEventManager().removeListener(j,this.updateFriendOfListenerFunc);
this.updateFriendOfListenerFunc=null;

if(this.updateBuddyFunc!=null)this.trackGui.watchee.getBuddyManager().getEventManager().removeListener(m,this.updateBuddyFunc);
this.updateBuddyFunc=null;
this.trackGui=null;
this.buddyTO=null;
this.log=null;
}},destruct:function(){this.destroyPopup();
}});
})();
(function(){var b="qx.ui.core.ISingleSelection",a="qx.event.type.Data";
qx.Interface.define(b,{events:{"changeSelection":a},members:{getSelection:function(){return true;
},setSelection:function(c){return arguments.length==1;
},resetSelection:function(){return true;
},isSelected:function(d){return arguments.length==1;
},isSelectionEmpty:function(){return true;
},getSelectables:function(e){return arguments.length==1;
}}});
})();
(function(){var m="pane",k="lastTab",j="bar",h="page",g="firstTab",f="close",d="right",c="bottom",b="button",a="changeSelection",B="top",A="left",z="__mq",y="qx.event.type.Data",x="barRight",w="beforeChangeSelection",v="close-button",u="tabview",t="vertical",s="_applyBarPosition",q="barLeft",r="horizontal",o="qx.ui.tabview.TabView",p="barTop",n="barBottom";
qx.Class.define(o,{extend:qx.ui.core.Widget,implement:qx.ui.core.ISingleSelection,include:[qx.ui.core.MContentPadding],construct:function(C){qx.ui.core.Widget.call(this);
this.__mp={top:p,right:x,bottom:n,left:q};
this._createChildControl(j);
this._createChildControl(m);
var D=this.__mq=new qx.ui.form.RadioGroup;
D.setWrap(false);
D.addListener(a,this._onChangeSelection,this);
if(C!=null){this.setBarPosition(C);
}else{this.initBarPosition();
}},events:{"changeSelection":y},properties:{appearance:{refine:true,init:u},barPosition:{check:[A,d,B,c],init:B,apply:s}},members:{__mq:null,_createChildControlImpl:function(E,F){var G;

switch(E){case j:G=new qx.ui.container.SlideBar();
G.setZIndex(10);
this._add(G);
break;
case m:G=new qx.ui.container.Stack;
G.setZIndex(5);
this._add(G,{flex:1});
break;
}return G||qx.ui.core.Widget.prototype._createChildControlImpl.call(this,E);
},_getContentPaddingTarget:function(){return this.getChildControl(m);
},add:function(H){var I=H.getButton();
var J=this.getChildControl(j);
var L=this.getChildControl(m);
H.exclude();
J.add(I);
L.add(H);
this.__mq.add(I);
H.addState(this.__mp[this.getBarPosition()]);
H.addState(k);
var K=this.getChildren();

if(K[0]==H){H.addState(g);
}else{K[K.length-2].removeState(k);
}H.addListener(f,this._onPageClose,this);
},addAt:function(M,N){var Q=this.getChildren();

if(!(N==null)&&N>Q.length){throw new Error("Index should be less than : "+Q.length);
}
if(N==null){N=Q.length;
}var O=M.getButton();
var P=this.getChildControl(j);
var R=this.getChildControl(m);
M.exclude();
P.addAt(O,N);
R.addAt(M,N);
this.__mq.add(O);
M.addState(this.__mp[this.getBarPosition()]);
Q=this.getChildren();

if(N==Q.length-1){M.addState(k);
}
if(Q[0]==M){M.addState(g);
}else{Q[Q.length-2].removeState(k);
}M.addListener(f,this._onPageClose,this);
},remove:function(S){var X=this.getChildControl(m);
var V=this.getChildControl(j);
var U=S.getButton();
var W=X.getChildren();
if(this.getSelection()[0]==S){var T=W.indexOf(S);

if(T==0){if(W[1]){this.setSelection([W[1]]);
}else{this.resetSelection();
}}else{this.setSelection([W[T-1]]);
}}V.remove(U);
X.remove(S);
this.__mq.remove(U);
S.removeState(this.__mp[this.getBarPosition()]);
if(S.hasState(g)){S.removeState(g);

if(W[0]){W[0].addState(g);
}}
if(S.hasState(k)){S.removeState(k);

if(W.length>0){W[W.length-1].addState(k);
}}S.removeListener(f,this._onPageClose,this);
},getChildren:function(){return this.getChildControl(m).getChildren();
},indexOf:function(Y){return this.getChildControl(m).indexOf(Y);
},__mp:null,_applyBarPosition:function(ba,bb){var bc=this.getChildControl(j);
var bh=ba==A||ba==d;
var bf=ba==d||ba==c;
var bg=bh?qx.ui.layout.HBox:qx.ui.layout.VBox;
var bj=this._getLayout();

if(bj&&bj instanceof bg){}else{this._setLayout(bj=new bg);
}bj.setReversed(bf);
bc.setOrientation(bh?t:r);
var bi=this.getChildren();
if(bb){var bd=this.__mp[bb];
bc.removeState(bd);
for(var i=0,l=bi.length;i<l;i++){bi[i].removeState(bd);
}}
if(ba){var be=this.__mp[ba];
bc.addState(be);
for(var i=0,l=bi.length;i<l;i++){bi[i].addState(be);
}}},getSelection:function(){var bk=this.__mq.getSelection();
var bl=[];

for(var i=0;i<bk.length;i++){bl.push(bk[i].getUserData(h));
}return bl;
},setSelection:function(bm){var bn=[];

for(var i=0;i<bm.length;i++){bn.push(bm[i].getChildControl(b));
}this.__mq.setSelection(bn);
},resetSelection:function(){this.__mq.resetSelection();
},isSelected:function(bo){var bp=bo.getChildControl(b);
return this.__mq.isSelected(bp);
},isSelectionEmpty:function(){return this.__mq.isSelectionEmpty();
},getSelectables:function(bq){var br=this.__mq.getSelectables(bq);
var bs=[];

for(var i=0;i<br.length;i++){bs.push(br[i].getUserData(h));
}return bs;
},_onChangeSelection:function(e){var bx=this.getChildControl(m);
var bu=e.getData()[0];
var bw=e.getOldData()[0];
var bt=[];
var bv=[];

if(bu){bt=[bu.getUserData(h)];
bx.setSelection(bt);
bu.focus();
this.scrollChildIntoView(bu,null,null,false);
}else{bx.resetSelection();
}
if(bw){bv=[bw.getUserData(h)];
}this.fireDataEvent(a,bt,bv);
},_onBeforeChangeSelection:function(e){if(!this.fireNonBubblingEvent(w,qx.event.type.Event,[false,true])){e.preventDefault();
}},_onRadioChangeSelection:function(e){var by=e.getData()[0];

if(by){this.setSelection([by.getUserData(h)]);
}else{this.resetSelection();
}},_onPageClose:function(e){var bA=e.getTarget();
var bz=bA.getButton().getChildControl(v);
bz.reset();
this.remove(bA);
}},destruct:function(){this._disposeObjects(z);
this.__mp=null;
}});
})();
(function(){var f="change",d="__mr",c="qx.event.type.Data",b="qx.ui.form.MModelSelection",a="changeSelection";
qx.Mixin.define(b,{construct:function(){this.__mr=new qx.data.Array();
this.__mr.addListener(f,this.__mu,this);
this.addListener(a,this.__mt,this);
},events:{changeModelSelection:c},members:{__mr:null,__ms:false,__mt:function(){if(this.__ms){return;
}var k=this.getSelection();
var g=[];

for(var i=0;i<k.length;i++){var l=k[i];
var h=l.getModel?l.getModel():null;

if(h!==null){g.push(h);
}}if(g.length===k.length){try{this.setModelSelection(g);
}catch(e){throw new Error("Could not set the model selection. Maybe your models are not unique?");
}}},__mu:function(){this.__ms=true;
var n=this.getSelectables(true);
var p=[];
var o=this.__mr.toArray();

for(var i=0;i<o.length;i++){var r=o[i];

for(var j=0;j<n.length;j++){var s=n[j];
var m=s.getModel?s.getModel():null;

if(r===m){p.push(s);
break;
}}}this.setSelection(p);
this.__ms=false;
var q=this.getSelection();

if(!qx.lang.Array.equals(q,p)){this.__mt();
}},getModelSelection:function(){return this.__mr;
},setModelSelection:function(t){if(!t){this.__mr.removeAll();
return;
}t.unshift(this.__mr.getLength());
t.unshift(0);
var u=this.__mr.splice.apply(this.__mr,t);
u.dispose();
}},destruct:function(){this._disposeObjects(d);
}});
})();
(function(){var h="[",g="idBubble-",f="]",d=".",c="changeBubble",b="qx.data.marshal.MEventBubbling",a="qx.event.type.Data";
qx.Mixin.define(b,{events:{"changeBubble":a},members:{_applyEventPropagation:function(j,k,name){this.fireDataEvent(c,{value:j,name:name,old:k});
this._registerEventChaining(j,k,name);
},_registerEventChaining:function(l,m,name){if((l instanceof qx.core.Object)&&qx.Class.hasMixin(l.constructor,qx.data.marshal.MEventBubbling)){var n=qx.lang.Function.bind(this.__mv,this,name);
var p=l.addListener(c,n,this);
var o=l.getUserData(g+this.$$hash);

if(o==null){o=[];
l.setUserData(g+this.$$hash,o);
}o.push(p);
}if(m!=null&&m.getUserData&&m.getUserData(g+this.$$hash)!=null){var o=m.getUserData(g+this.$$hash);

for(var i=0;i<o.length;i++){m.removeListenerById(o[i]);
}m.setUserData(g+this.$$hash,null);
}},__mv:function(name,e){var x=e.getData();
var t=x.value;
var r=x.old;
if(qx.Class.hasInterface(e.getTarget().constructor,qx.data.IListData)){if(x.name.indexOf){var w=x.name.indexOf(d)!=-1?x.name.indexOf(d):x.name.length;
var u=x.name.indexOf(h)!=-1?x.name.indexOf(h):x.name.length;

if(w<u){var q=x.name.substring(0,w);
var v=x.name.substring(w+1,x.name.length);

if(v[0]!=h){v=d+v;
}var s=name+h+q+f+v;
}else if(u<w){var q=x.name.substring(0,u);
var v=x.name.substring(u,x.name.length);
var s=name+h+q+f+v;
}else{var s=name+h+x.name+f;
}}else{var s=name+h+x.name+f;
}}else{var s=name+d+x.name;
}this.fireDataEvent(c,{value:t,name:s,old:r});
}}});
})();
(function(){var o="change",n="changeBubble",m="add",l="remove",k="0-",j="order",h="-",g="0",f="qx.event.type.Data",e="Boolean",b="",d="qx.data.Array",c="number",a="changeLength";
qx.Class.define(d,{extend:qx.core.Object,include:qx.data.marshal.MEventBubbling,implement:[qx.data.IListData],construct:function(p){qx.core.Object.call(this);
if(p==undefined){this.__mw=[];
}else if(arguments.length>1){this.__mw=[];

for(var i=0;i<arguments.length;i++){this.__mw.push(arguments[i]);
}}else if(typeof p==c){this.__mw=new Array(p);
}else if(p instanceof Array){this.__mw=qx.lang.Array.clone(p);
}else{this.__mw=[];
this.dispose();
throw new Error("Type of the parameter not supported!");
}for(var i=0;i<this.__mw.length;i++){this._applyEventPropagation(this.__mw[i],null,i);
}this.__mx();
},properties:{autoDisposeItems:{check:e,init:false}},events:{"change":f,"changeLength":f},members:{__mw:null,concat:function(q){if(q){var r=this.__mw.concat(q);
}else{var r=this.__mw.concat();
}return new qx.data.Array(r);
},join:function(s){return this.__mw.join(s);
},pop:function(){var t=this.__mw.pop();
this.__mx();
this._registerEventChaining(null,t,this.length-1);
this.fireDataEvent(n,{value:[],name:this.length,old:[t]});
this.fireDataEvent(o,{start:this.length-1,end:this.length-1,type:l,items:[t]},null);
return t;
},push:function(u){for(var i=0;i<arguments.length;i++){this.__mw.push(arguments[i]);
this.__mx();
this._registerEventChaining(arguments[i],null,this.length-1);
this.fireDataEvent(n,{value:[arguments[i]],name:this.length-1,old:[]});
this.fireDataEvent(o,{start:this.length-1,end:this.length-1,type:m,items:[arguments[i]]},null);
}return this.length;
},reverse:function(){if(this.length==0){return;
}var v=this.__mw.concat();
this.__mw.reverse();
this.fireDataEvent(o,{start:0,end:this.length-1,type:j,items:null},null);
this.fireDataEvent(n,{value:this.__mw,name:k+(this.__mw.length-1),old:v});
},shift:function(){if(this.length==0){return;
}var w=this.__mw.shift();
this.__mx();
this._registerEventChaining(null,w,this.length-1);
this.fireDataEvent(n,{value:[],name:g,old:[w]});
this.fireDataEvent(o,{start:0,end:this.length-1,type:l,items:[w]},null);
return w;
},slice:function(x,y){return new qx.data.Array(this.__mw.slice(x,y));
},splice:function(z,A,B){var J=this.__mw.length;
var F=this.__mw.splice.apply(this.__mw,arguments);
if(this.__mw.length!=J){this.__mx();
}var H=A>0;
var D=arguments.length>2;
var E=null;

if(H||D){if(this.__mw.length>J){var I=m;
}else if(this.__mw.length<J){var I=l;
E=F;
}else{var I=j;
}this.fireDataEvent(o,{start:z,end:this.length-1,type:I,items:E},null);
}for(var i=2;i<arguments.length;i++){this._registerEventChaining(arguments[i],null,z+i);
}var G=[];

for(var i=2;i<arguments.length;i++){G[i-2]=arguments[i];
}var C=(z+Math.max(arguments.length-3,A-1));
var name=z==C?C:z+h+C;
this.fireDataEvent(n,{value:G,name:name,old:F});
for(var i=0;i<F.length;i++){this._registerEventChaining(null,F[i],i);
}return (new qx.data.Array(F));
},sort:function(K){if(this.length==0){return;
}var L=this.__mw.concat();
this.__mw.sort.apply(this.__mw,arguments);
this.fireDataEvent(o,{start:0,end:this.length-1,type:j,items:null},null);
this.fireDataEvent(n,{value:this.__mw,name:k+(this.length-1),old:L});
},unshift:function(M){for(var i=arguments.length-1;i>=0;i--){this.__mw.unshift(arguments[i]);
this.__mx();
this._registerEventChaining(arguments[i],null,0);
this.fireDataEvent(n,{value:[this.__mw[0]],name:g,old:[this.__mw[1]]});
this.fireDataEvent(o,{start:0,end:this.length-1,type:m,items:[arguments[i]]},null);
}return this.length;
},toArray:function(){return this.__mw;
},getItem:function(N){return this.__mw[N];
},setItem:function(O,P){var Q=this.__mw[O];
if(Q===P){return;
}this.__mw[O]=P;
this._registerEventChaining(P,Q,O);
if(this.length!=this.__mw.length){this.__mx();
}this.fireDataEvent(n,{value:[P],name:O,old:[Q]});
this.fireDataEvent(o,{start:O,end:O,type:m,items:[P]},null);
},getLength:function(){return this.length;
},indexOf:function(R){return this.__mw.indexOf(R);
},toString:function(){if(this.__mw!=null){return this.__mw.toString();
}return b;
},contains:function(S){return this.__mw.indexOf(S)!==-1;
},copy:function(){return this.concat();
},insertAt:function(T,U){this.splice(T,0,U).dispose();
},insertBefore:function(V,W){var X=this.indexOf(V);

if(X==-1){this.push(W);
}else{this.splice(X,0,W).dispose();
}},insertAfter:function(Y,ba){var bb=this.indexOf(Y);

if(bb==-1||bb==(this.length-1)){this.push(ba);
}else{this.splice(bb+1,0,ba).dispose();
}},removeAt:function(bc){var be=this.splice(bc,1);
var bd=be.getItem(0);
be.dispose();
return bd;
},removeAll:function(){for(var i=0;i<this.__mw.length;i++){this._registerEventChaining(null,this.__mw[i],i);
}if(this.getLength()==0){return;
}var bg=this.getLength();
var bf=this.__mw.concat();
this.__mw.length=0;
this.__mx();
this.fireDataEvent(n,{value:[],name:k+(bg-1),old:bf});
this.fireDataEvent(o,{start:0,end:bg-1,type:l,items:bf},null);
return bf;
},append:function(bh){if(bh instanceof qx.data.Array){bh=bh.toArray();
}Array.prototype.push.apply(this.__mw,bh);
for(var i=0;i<bh.length;i++){this._registerEventChaining(bh[i],null,this.__mw.length+i);
}var bi=this.length;
this.__mx();
this.fireDataEvent(n,{value:bh,name:bi==(this.length-1)?bi:bi+h+(this.length-1),old:[]});
this.fireDataEvent(o,{start:bi,end:this.length-1,type:m,items:bh},null);
},remove:function(bj){var bk=this.indexOf(bj);

if(bk!=-1){this.splice(bk,1).dispose();
return bj;
}},equals:function(bl){if(this.length!==bl.length){return false;
}
for(var i=0;i<this.length;i++){if(this.getItem(i)!==bl.getItem(i)){return false;
}}return true;
},sum:function(){var bm=0;

for(var i=0;i<this.length;i++){bm+=this.getItem(i);
}return bm;
},max:function(){var bn=this.getItem(0);

for(var i=1;i<this.length;i++){if(this.getItem(i)>bn){bn=this.getItem(i);
}}return bn===undefined?null:bn;
},min:function(){var bo=this.getItem(0);

for(var i=1;i<this.length;i++){if(this.getItem(i)<bo){bo=this.getItem(i);
}}return bo===undefined?null:bo;
},forEach:function(bp,bq){for(var i=0;i<this.__mw.length;i++){bp.call(bq,this.__mw[i],i,this);
}},__mx:function(){var br=this.length;
this.length=this.__mw.length;
this.fireDataEvent(a,this.length,br);
}},destruct:function(){for(var i=0;i<this.__mw.length;i++){var bs=this.__mw[i];
this._applyEventPropagation(null,bs,i);
if(this.isAutoDisposeItems()&&bs&&bs instanceof qx.core.Object){bs.dispose();
}}this.__mw=null;
}});
})();
(function(){var f="qx.ui.core.MSingleSelectionHandling",d="__eJ",c="changeSelection",b="changeSelected",a="qx.event.type.Data";
qx.Mixin.define(f,{events:{"changeSelection":a},members:{__eJ:null,getSelection:function(){var g=this.__my().getSelected();

if(g){return [g];
}else{return [];
}},setSelection:function(h){switch(h.length){case 0:this.resetSelection();
break;
case 1:this.__my().setSelected(h[0]);
break;
default:throw new Error("Could only select one item, but the selection"+" array contains "+h.length+" items!");
}},resetSelection:function(){this.__my().resetSelected();
},isSelected:function(i){return this.__my().isSelected(i);
},isSelectionEmpty:function(){return this.__my().isSelectionEmpty();
},getSelectables:function(j){return this.__my().getSelectables(j);
},_onChangeSelected:function(e){var l=e.getData();
var k=e.getOldData();
l==null?l=[]:l=[l];
k==null?k=[]:k=[k];
this.fireDataEvent(c,l,k);
},__my:function(){if(this.__eJ==null){var m=this;
this.__eJ=new qx.ui.core.SingleSelectionManager({getItems:function(){return m._getItems();
},isItemSelectable:function(n){if(m._isItemSelectable){return m._isItemSelectable(n);
}else{return n.isVisible();
}}});
this.__eJ.addListener(b,this._onChangeSelected,this);
}this.__eJ.setAllowEmptySelection(this._isAllowEmptySelection());
return this.__eJ;
}},destruct:function(){this._disposeObjects(d);
}});
})();
(function(){var g="Boolean",f="qx.ui.core.SingleSelectionManager",e="__mA",d="__mB",c="changeSelected",b="qx.event.type.Data",a="__mz";
qx.Class.define(f,{extend:qx.core.Object,construct:function(h){qx.core.Object.call(this);
this.__mz=h;
},events:{"changeSelected":b},properties:{allowEmptySelection:{check:g,init:true,apply:d}},members:{__mA:null,__mz:null,getSelected:function(){return this.__mA;
},setSelected:function(j){if(!this.__mD(j)){throw new Error("Could not select "+j+", because it is not a child element!");
}this.__mC(j);
},resetSelected:function(){this.__mC(null);
},isSelected:function(k){if(!this.__mD(k)){throw new Error("Could not check if "+k+" is selected,"+" because it is not a child element!");
}return this.__mA===k;
},isSelectionEmpty:function(){return this.__mA==null;
},getSelectables:function(l){var m=this.__mz.getItems();
var n=[];

for(var i=0;i<m.length;i++){if(this.__mz.isItemSelectable(m[i])){n.push(m[i]);
}}if(!l){for(var i=n.length-1;i>=0;i--){if(!n[i].getEnabled()){n.splice(i,1);
}}}return n;
},__mB:function(o,p){if(!o){this.__mC(this.__mA);
}},__mC:function(q){var t=this.__mA;
var s=q;

if(s!=null&&t===s){return;
}
if(!this.isAllowEmptySelection()&&s==null){var r=this.getSelectables(true)[0];

if(r){s=r;
}}this.__mA=s;
this.fireDataEvent(c,s,t);
},__mD:function(u){var v=this.__mz.getItems();

for(var i=0;i<v.length;i++){if(v[i]===u){return true;
}}return false;
}},destruct:function(){if(this.__mz.toHashCode){this._disposeObjects(a);
}else{this.__mz=null;
}this._disposeObjects(e);
}});
})();
(function(){var a="qx.ui.form.IModelSelection";
qx.Interface.define(a,{members:{setModelSelection:function(b){},getModelSelection:function(){}}});
})();
(function(){var r="Boolean",q="changeInvalidMessage",p="changeValue",o="String",n="_applyAllowEmptySelection",m="_applyInvalidMessage",k="qx.ui.form.RadioGroup",j="_applyValid",h="__mE",g="",c="changeRequired",f="changeValid",d="changeEnabled",b="changeSelection",a="_applyEnabled";
qx.Class.define(k,{extend:qx.core.Object,implement:[qx.ui.core.ISingleSelection,qx.ui.form.IForm,qx.ui.form.IModelSelection],include:[qx.ui.core.MSingleSelectionHandling,qx.ui.form.MModelSelection],construct:function(s){qx.core.Object.call(this);
this.__mE=[];
this.addListener(b,this.__mF,this);

if(s!=null){this.add.apply(this,arguments);
}},properties:{enabled:{check:r,apply:a,event:d,init:true},wrap:{check:r,init:true},allowEmptySelection:{check:r,init:false,apply:n},valid:{check:r,init:true,apply:j,event:f},required:{check:r,init:false,event:c},invalidMessage:{check:o,init:g,event:q,apply:m},requiredInvalidMessage:{check:o,nullable:true,event:q}},members:{__mE:null,getItems:function(){return this.__mE;
},add:function(t){var u=this.__mE;
var v;

for(var i=0,l=arguments.length;i<l;i++){v=arguments[i];

if(qx.lang.Array.contains(u,v)){continue;
}v.addListener(p,this._onItemChangeChecked,this);
u.push(v);
v.setGroup(this);
if(v.getValue()){this.setSelection([v]);
}}if(!this.isAllowEmptySelection()&&u.length>0&&!this.getSelection()[0]){this.setSelection([u[0]]);
}},remove:function(w){var x=this.__mE;

if(qx.lang.Array.contains(x,w)){qx.lang.Array.remove(x,w);
if(w.getGroup()===this){w.resetGroup();
}w.removeListener(p,this._onItemChangeChecked,this);
if(w.getValue()){this.resetSelection();
}}},getChildren:function(){return this.__mE;
},_onItemChangeChecked:function(e){var y=e.getTarget();

if(y.getValue()){this.setSelection([y]);
}else if(this.getSelection()[0]==y){this.resetSelection();
}},_applyInvalidMessage:function(z,A){for(var i=0;i<this.__mE.length;i++){this.__mE[i].setInvalidMessage(z);
}},_applyValid:function(B,C){for(var i=0;i<this.__mE.length;i++){this.__mE[i].setValid(B);
}},_applyEnabled:function(D,E){var F=this.__mE;

if(D==null){for(var i=0,l=F.length;i<l;i++){F[i].resetEnabled();
}}else{for(var i=0,l=F.length;i<l;i++){F[i].setEnabled(D);
}}},_applyAllowEmptySelection:function(G,H){if(!G&&this.isSelectionEmpty()){this.resetSelection();
}},selectNext:function(){var I=this.getSelection()[0];
var K=this.__mE;
var J=K.indexOf(I);

if(J==-1){return;
}var i=0;
var length=K.length;
if(this.getWrap()){J=(J+1)%length;
}else{J=Math.min(J+1,length-1);
}
while(i<length&&!K[J].getEnabled()){J=(J+1)%length;
i++;
}this.setSelection([K[J]]);
},selectPrevious:function(){var L=this.getSelection()[0];
var N=this.__mE;
var M=N.indexOf(L);

if(M==-1){return;
}var i=0;
var length=N.length;
if(this.getWrap()){M=(M-1+length)%length;
}else{M=Math.max(M-1,0);
}
while(i<length&&!N[M].getEnabled()){M=(M-1+length)%length;
i++;
}this.setSelection([N[M]]);
},_getItems:function(){return this.getItems();
},_isAllowEmptySelection:function(){return this.isAllowEmptySelection();
},_isItemSelectable:function(O){return this.__mE.indexOf(O)!=-1;
},__mF:function(e){var Q=e.getData()[0];
var P=e.getOldData()[0];

if(P){P.setValue(false);
}
if(Q){Q.setValue(true);
}}},destruct:function(){this._disposeArray(h);
}});
})();
(function(){var u="horizontal",t="scrollpane",s="button-backward",r="button-forward",q="vertical",p="content",o="execute",n="qx.ui.container.SlideBar",m="scrollY",l="engine.name",d="removeChildWidget",k="scrollX",h="_applyOrientation",c="mousewheel",b="gecko",g="x",f="y",i="Integer",a="slidebar",j="update";
qx.Class.define(n,{extend:qx.ui.core.Widget,include:[qx.ui.core.MRemoteChildrenHandling,qx.ui.core.MRemoteLayoutHandling],construct:function(v){qx.ui.core.Widget.call(this);
var w=this.getChildControl(t);
this._add(w,{flex:1});

if(v!=null){this.setOrientation(v);
}else{this.initOrientation();
}this.addListener(c,this._onMouseWheel,this);
},properties:{appearance:{refine:true,init:a},orientation:{check:[u,q],init:u,apply:h},scrollStep:{check:i,init:15,themeable:true}},members:{getChildrenContainer:function(){return this.getChildControl(p);
},_createChildControlImpl:function(x,y){var z;

switch(x){case r:z=new qx.ui.form.RepeatButton;
z.addListener(o,this._onExecuteForward,this);
z.setFocusable(false);
this._addAt(z,2);
break;
case s:z=new qx.ui.form.RepeatButton;
z.addListener(o,this._onExecuteBackward,this);
z.setFocusable(false);
this._addAt(z,0);
break;
case p:z=new qx.ui.container.Composite();
if(qx.core.Environment.get(l)==b){z.addListener(d,this._onRemoveChild,this);
}this.getChildControl(t).add(z);
break;
case t:z=new qx.ui.core.scroll.ScrollPane();
z.addListener(j,this._onResize,this);
z.addListener(k,this._onScroll,this);
z.addListener(m,this._onScroll,this);
break;
}return z||qx.ui.core.Widget.prototype._createChildControlImpl.call(this,x);
},_forwardStates:{barLeft:true,barTop:true,barRight:true,barBottom:true},scrollBy:function(A){var B=this.getChildControl(t);

if(this.getOrientation()===u){B.scrollByX(A);
}else{B.scrollByY(A);
}},scrollTo:function(C){var D=this.getChildControl(t);

if(this.getOrientation()===u){D.scrollToX(C);
}else{D.scrollToY(C);
}},_applyEnabled:function(E,F,name){qx.ui.core.Widget.prototype._applyEnabled.call(this,E,F,name);
this._updateArrowsEnabled();
},_applyOrientation:function(G,H){var K=[this.getLayout(),this._getLayout()];
var J=this.getChildControl(r);
var I=this.getChildControl(s);
if(H==q){J.removeState(q);
I.removeState(q);
J.addState(u);
I.addState(u);
}else if(H==u){J.removeState(u);
I.removeState(u);
J.addState(q);
I.addState(q);
}
if(G==u){this._setLayout(new qx.ui.layout.HBox());
this.setLayout(new qx.ui.layout.HBox());
}else{this._setLayout(new qx.ui.layout.VBox());
this.setLayout(new qx.ui.layout.VBox());
}
if(K[0]){K[0].dispose();
}
if(K[1]){K[1].dispose();
}},_onMouseWheel:function(e){var L=0;

if(this.getOrientation()===u){L=e.getWheelDelta(g);
}else{L=e.getWheelDelta(f);
}this.scrollBy(L*this.getScrollStep());
e.stop();
},_onScroll:function(){this._updateArrowsEnabled();
},_onResize:function(e){var content=this.getChildControl(t).getChildren()[0];

if(!content){return;
}var M=this.getInnerSize();
var O=content.getBounds();
var N=(this.getOrientation()===u)?O.width>M.width:O.height>M.height;

if(N){this._showArrows();
this._updateArrowsEnabled();
}else{this._hideArrows();
}},_onExecuteBackward:function(){this.scrollBy(-this.getScrollStep());
},_onExecuteForward:function(){this.scrollBy(this.getScrollStep());
},_onRemoveChild:function(){qx.event.Timer.once(function(){this.scrollBy(this.getChildControl(t).getScrollX());
},this,50);
},_updateArrowsEnabled:function(){if(!this.getEnabled()){this.getChildControl(s).setEnabled(false);
this.getChildControl(r).setEnabled(false);
return;
}var Q=this.getChildControl(t);

if(this.getOrientation()===u){var P=Q.getScrollX();
var R=Q.getScrollMaxX();
}else{var P=Q.getScrollY();
var R=Q.getScrollMaxY();
}this.getChildControl(s).setEnabled(P>0);
this.getChildControl(r).setEnabled(P<R);
},_showArrows:function(){this._showChildControl(r);
this._showChildControl(s);
},_hideArrows:function(){this._excludeChildControl(r);
this._excludeChildControl(s);
this.scrollTo(0);
}}});
})();
(function(){var n="pressed",m="abandoned",l="Integer",k="hovered",j="qx.event.type.Event",i="Enter",h="Space",g="press",f="qx.ui.form.RepeatButton",d="release",a="interval",c="__jg",b="execute";
qx.Class.define(f,{extend:qx.ui.form.Button,construct:function(o,p){qx.ui.form.Button.call(this,o,p);
this.__jg=new qx.event.AcceleratingTimer();
this.__jg.addListener(a,this._onInterval,this);
},events:{"execute":j,"press":j,"release":j},properties:{interval:{check:l,init:100},firstInterval:{check:l,init:500},minTimer:{check:l,init:20},timerDecrease:{check:l,init:2}},members:{__mG:null,__jg:null,press:function(){if(this.isEnabled()){if(!this.hasState(n)){this.__mH();
}this.removeState(m);
this.addState(n);
}},release:function(q){if(!this.isEnabled()){return;
}if(this.hasState(n)){if(!this.__mG){this.execute();
}}this.removeState(n);
this.removeState(m);
this.__mI();
},_applyEnabled:function(r,s){qx.ui.form.Button.prototype._applyEnabled.call(this,r,s);

if(!r){this.removeState(n);
this.removeState(m);
this.__mI();
}},_onMouseOver:function(e){if(!this.isEnabled()||e.getTarget()!==this){return;
}
if(this.hasState(m)){this.removeState(m);
this.addState(n);
this.__jg.start();
}this.addState(k);
},_onMouseOut:function(e){if(!this.isEnabled()||e.getTarget()!==this){return;
}this.removeState(k);

if(this.hasState(n)){this.removeState(n);
this.addState(m);
this.__jg.stop();
}},_onMouseDown:function(e){if(!e.isLeftPressed()){return;
}this.capture();
this.__mH();
e.stopPropagation();
},_onMouseUp:function(e){this.releaseCapture();

if(!this.hasState(m)){this.addState(k);

if(this.hasState(n)&&!this.__mG){this.execute();
}}this.__mI();
e.stopPropagation();
},_onKeyUp:function(e){switch(e.getKeyIdentifier()){case i:case h:if(this.hasState(n)){if(!this.__mG){this.execute();
}this.removeState(n);
this.removeState(m);
e.stopPropagation();
this.__mI();
}}},_onKeyDown:function(e){switch(e.getKeyIdentifier()){case i:case h:this.removeState(m);
this.addState(n);
e.stopPropagation();
this.__mH();
}},_onInterval:function(e){this.__mG=true;
this.fireEvent(b);
},__mH:function(){this.fireEvent(g);
this.__mG=false;
this.__jg.set({interval:this.getInterval(),firstInterval:this.getFirstInterval(),minimum:this.getMinTimer(),decrease:this.getTimerDecrease()}).start();
this.removeState(m);
this.addState(n);
},__mI:function(){this.fireEvent(d);
this.__jg.stop();
this.removeState(m);
this.removeState(n);
}},destruct:function(){this._disposeObjects(c);
}});
})();
(function(){var e="Integer",d="interval",c="qx.event.type.Event",b="__jg",a="qx.event.AcceleratingTimer";
qx.Class.define(a,{extend:qx.core.Object,construct:function(){qx.core.Object.call(this);
this.__jg=new qx.event.Timer(this.getInterval());
this.__jg.addListener(d,this._onInterval,this);
},events:{"interval":c},properties:{interval:{check:e,init:100},firstInterval:{check:e,init:500},minimum:{check:e,init:20},decrease:{check:e,init:2}},members:{__jg:null,__mJ:null,start:function(){this.__jg.setInterval(this.getFirstInterval());
this.__jg.start();
},stop:function(){this.__jg.stop();
this.__mJ=null;
},_onInterval:function(){this.__jg.stop();

if(this.__mJ==null){this.__mJ=this.getInterval();
}this.__mJ=Math.max(this.getMinimum(),this.__mJ-this.getDecrease());
this.__jg.setInterval(this.__mJ);
this.__jg.start();
this.fireEvent(d);
}},destruct:function(){this._disposeObjects(b);
}});
})();
(function(){var m="resize",l="scrollY",k="update",j="scrollX",i="_applyScrollX",h="_applyScrollY",g="qx.lang.Type.isNumber(value)&&value>=0&&value<=this.getScrollMaxX()",f="appear",d="qx.lang.Type.isNumber(value)&&value>=0&&value<=this.getScrollMaxY()",c="qx.event.type.Event",a="qx.ui.core.scroll.ScrollPane",b="scroll";
qx.Class.define(a,{extend:qx.ui.core.Widget,construct:function(){qx.ui.core.Widget.call(this);
this.set({minWidth:0,minHeight:0});
this._setLayout(new qx.ui.layout.Grow());
this.addListener(m,this._onUpdate);
var n=this.getContentElement();
n.addListener(b,this._onScroll,this);
n.addListener(f,this._onAppear,this);
},events:{update:c},properties:{scrollX:{check:g,apply:i,event:j,init:0},scrollY:{check:d,apply:h,event:l,init:0}},members:{add:function(o){var p=this._getChildren()[0];

if(p){this._remove(p);
p.removeListener(m,this._onUpdate,this);
}
if(o){this._add(o);
o.addListener(m,this._onUpdate,this);
}},remove:function(q){if(q){this._remove(q);
q.removeListener(m,this._onUpdate,this);
}},getChildren:function(){return this._getChildren();
},_onUpdate:function(e){this.fireEvent(k);
},_onScroll:function(e){var r=this.getContentElement();
this.setScrollX(r.getScrollX());
this.setScrollY(r.getScrollY());
},_onAppear:function(e){var v=this.getContentElement();
var s=this.getScrollX();
var t=v.getScrollX();

if(s!=t){v.scrollToX(s);
}var w=this.getScrollY();
var u=v.getScrollY();

if(w!=u){v.scrollToY(w);
}},getItemTop:function(z){var top=0;

do{top+=z.getBounds().top;
z=z.getLayoutParent();
}while(z&&z!==this);
return top;
},getItemBottom:function(A){return this.getItemTop(A)+A.getBounds().height;
},getItemLeft:function(B){var C=0;
var parent;

do{C+=B.getBounds().left;
parent=B.getLayoutParent();

if(parent){C+=parent.getInsets().left;
}B=parent;
}while(B&&B!==this);
return C;
},getItemRight:function(D){return this.getItemLeft(D)+D.getBounds().width;
},getScrollSize:function(){return this.getChildren()[0].getBounds();
},getScrollMaxX:function(){var F=this.getInnerSize();
var E=this.getScrollSize();

if(F&&E){return Math.max(0,E.width-F.width);
}return 0;
},getScrollMaxY:function(){var H=this.getInnerSize();
var G=this.getScrollSize();

if(H&&G){return Math.max(0,G.height-H.height);
}return 0;
},scrollToX:function(I){var J=this.getScrollMaxX();

if(I<0){I=0;
}else if(I>J){I=J;
}this.setScrollX(I);
},scrollToY:function(K){var L=this.getScrollMaxY();

if(K<0){K=0;
}else if(K>L){K=L;
}this.setScrollY(K);
},scrollByX:function(x){this.scrollToX(this.getScrollX()+x);
},scrollByY:function(y){this.scrollToY(this.getScrollY()+y);
},_applyScrollX:function(M){this.getContentElement().scrollToX(M);
},_applyScrollY:function(N){this.getContentElement().scrollToY(N);
}}});
})();
(function(){var d="_applyDynamic",c="changeSelection",b="Boolean",a="qx.ui.container.Stack";
qx.Class.define(a,{extend:qx.ui.core.Widget,implement:qx.ui.core.ISingleSelection,include:[qx.ui.core.MSingleSelectionHandling,qx.ui.core.MChildrenHandling],construct:function(){qx.ui.core.Widget.call(this);
this._setLayout(new qx.ui.layout.Grow);
this.addListener(c,this.__mF,this);
},properties:{dynamic:{check:b,init:false,apply:d}},members:{_applyDynamic:function(f){var h=this._getChildren();
var g=this.getSelection()[0];
var j;

for(var i=0,l=h.length;i<l;i++){j=h[i];

if(j!=g){if(f){h[i].exclude();
}else{h[i].hide();
}}}},_getItems:function(){return this.getChildren();
},_isAllowEmptySelection:function(){return true;
},_isItemSelectable:function(k){return true;
},__mF:function(e){var m=e.getOldData()[0];
var n=e.getData()[0];

if(m){if(this.isDynamic()){m.exclude();
}else{m.hide();
}}
if(n){n.show();
}},_afterAddChild:function(o){var p=this.getSelection()[0];

if(!p){this.setSelection([o]);
}else if(p!==o){if(this.isDynamic()){o.exclude();
}else{o.hide();
}}},_afterRemoveChild:function(q){if(this.getSelection()[0]===q){var r=this._getChildren()[0];

if(r){this.setSelection([r]);
}else{this.resetSelection();
}}},previous:function(){var u=this.getSelection()[0];
var s=this._indexOf(u)-1;
var v=this._getChildren();

if(s<0){s=v.length-1;
}var t=v[s];
this.setSelection([t]);
},next:function(){var x=this.getSelection()[0];
var w=this._indexOf(x)+1;
var y=this._getChildren();
var z=y[w]||y[0];
this.setSelection([z]);
}}});
})();
(function(){var d="bar",c="showTabOnEvent",b="track.util.EnhancedTabView",a="countBlinkOnEvent";
qx.Class.define(b,{extend:qx.ui.tabview.TabView,include:[qx.locale.MTranslation],construct:function(){qx.ui.tabview.TabView.call(this);
this.setContentPadding(0);
this.lastAddedPage=null;
this.tabViewPageHashtable=new org.xmlBlaster.util.Hashtable();
this.showTabOnEvent=xbProperties.getBoolean(c,false);
this.countBlinkOnEvent=xbProperties.getInt(a,3);
this.barHidden=false;
},members:{hideBar:function(){this.getChildControl(d).exclude();
this.barHidden=true;
},removePage:function(f){var g=this.getPage(f);
try{this.remove(g);
}catch(e){this.warn(e.message);
}this.tabViewPageHashtable.remove(f);
},removeAllPages:function(){var h=this.getChildren();

for(var i=0;i<h.length;i++){this.remove(h[i]);
}this.tabViewPageHashtable=null;
this.tabViewPageHashtable=new org.xmlBlaster.util.Hashtable();
},putPage:function(j,k){this.tabViewPageHashtable.put(j,k);
this.add(k);
},getPage:function(l){return this.tabViewPageHashtable.get(l,null);
},getPages:function(){return this.tabViewPageHashtable.getValues();
},selectPage:function(m){var n=this.getPage(m);

if(n==null)return false;
this.setSelection([n]);
return true;
},highlightPage:function(o){if(this.showTabOnEvent)this.selectPage(o);

if(this.countBlinkOnEvent>0){var p=this.getPage(o);

if(p instanceof track.util.EnhancedTabViewPage)p.blink(this.countBlinkOnEvent);
}},addPage:function(q,content){var r=new qx.ui.tabview.Page(q);
r.setLayout(new qx.ui.layout.VBox(0));
r.add(content);
this.lastAddedPage=r;
this.add(r);
return r;
},addContent:function(content){if(this.lastAddedPage!=null)this.lastAddedPage.add(content);
}}});
})();
(function(){var l="button",k="",j="close",i="String",h="_applyIcon",g="page",f="qx.event.type.Event",e="_applyShowCloseButton",d="tabview-page",c="qx.ui.tabview.Page",a="_applyLabel",b="Boolean";
qx.Class.define(c,{extend:qx.ui.container.Composite,construct:function(m,n){qx.ui.container.Composite.call(this);
this._createChildControl(l);
if(m!=null){this.setLabel(m);
}
if(n!=null){this.setIcon(n);
}},events:{"close":f},properties:{appearance:{refine:true,init:d},label:{check:i,init:k,apply:a},icon:{check:i,init:k,apply:h},showCloseButton:{check:b,init:false,apply:e}},members:{_forwardStates:{barTop:1,barRight:1,barBottom:1,barLeft:1,firstTab:1,lastTab:1},_applyIcon:function(o,p){this.getChildControl(l).setIcon(o);
},_applyLabel:function(q,r){this.getChildControl(l).setLabel(q);
},_applyEnabled:function(s,t){qx.ui.container.Composite.prototype._applyEnabled.call(this,s,t);
var u=this.getChildControl(l);
s==null?u.resetEnabled():u.setEnabled(s);
},_createChildControlImpl:function(v,w){var x;

switch(v){case l:x=new qx.ui.tabview.TabButton;
x.setAllowGrowX(true);
x.setAllowGrowY(true);
x.setUserData(g,this);
x.addListener(j,this._onButtonClose,this);
break;
}return x||qx.ui.container.Composite.prototype._createChildControlImpl.call(this,v);
},_applyShowCloseButton:function(y,z){this.getChildControl(l).setShowCloseButton(y);
},_onButtonClose:function(){this.fireEvent(j);
},getButton:function(){return this.getChildControl(l);
}}});
})();
(function(){var b="qx.ui.form.IModel",a="qx.event.type.Data";
qx.Interface.define(b,{events:{"changeModel":a},members:{setModel:function(c){},getModel:function(){},resetModel:function(){}}});
})();
(function(){var b="qx.ui.form.IRadioItem",a="qx.event.type.Data";
qx.Interface.define(b,{events:{"changeValue":a},members:{setValue:function(c){},getValue:function(){},setGroup:function(d){this.assertInstance(d,qx.ui.form.RadioGroup);
},getGroup:function(){}}});
})();
(function(){var b="changeModel",a="qx.ui.form.MModelProperty";
qx.Mixin.define(a,{properties:{model:{nullable:true,event:b,dereference:true}}});
})();
(function(){var b="qx.ui.form.IBooleanForm",a="qx.event.type.Data";
qx.Interface.define(b,{events:{"changeValue":a},members:{setValue:function(c){return arguments.length==1;
},resetValue:function(){},getValue:function(){}}});
})();
(function(){var t="checked",s="keypress",r="Boolean",q="Right",p="label",o="Left",n="_applyValue",m="changeValue",l="Up",k="value",d="qx.ui.form.RadioButton",j="radiobutton",h="toolTipText",c="enabled",b="qx.ui.form.RadioGroup",g="Down",f="_applyGroup",i="menu",a="execute";
qx.Class.define(d,{extend:qx.ui.form.Button,include:[qx.ui.form.MForm,qx.ui.form.MModelProperty],implement:[qx.ui.form.IRadioItem,qx.ui.form.IForm,qx.ui.form.IBooleanForm,qx.ui.form.IModel],construct:function(u){qx.ui.form.Button.call(this,u);
this.addListener(a,this._onExecute);
this.addListener(s,this._onKeyPress);
},properties:{group:{check:b,nullable:true,apply:f},value:{check:r,nullable:true,event:m,apply:n,init:false},appearance:{refine:true,init:j},allowGrowX:{refine:true,init:false}},members:{_forwardStates:{checked:true,focused:true,invalid:true,hovered:true},_bindableProperties:[c,p,h,k,i],_applyValue:function(v,w){v?this.addState(t):this.removeState(t);
},_applyGroup:function(x,y){if(y){y.remove(this);
}
if(x){x.add(this);
}},_onExecute:function(e){var z=this.getGroup();

if(z&&z.getAllowEmptySelection()){this.toggleValue();
}else{this.setValue(true);
}},_onKeyPress:function(e){var A=this.getGroup();

if(!A){return;
}
switch(e.getKeyIdentifier()){case o:case l:A.selectPrevious();
break;
case q:case g:A.selectNext();
break;
}}}});
})();
(function(){var o="close-button",n="middle",m="left",l="icon",k="label",j="right",i="click",h="Boolean",g="bottom",f="qx.ui.tabview.TabButton",c="center",e="_applyShowCloseButton",d="top",b="close",a="qx.event.type.Data";
qx.Class.define(f,{extend:qx.ui.form.RadioButton,implement:qx.ui.form.IRadioItem,construct:function(){qx.ui.form.RadioButton.call(this);
var p=new qx.ui.layout.Grid(2,0);
p.setRowAlign(0,m,n);
p.setColumnAlign(0,j,n);
this._getLayout().dispose();
this._setLayout(p);
this.initShowCloseButton();
},events:{"close":a},properties:{showCloseButton:{check:h,init:false,apply:e}},members:{_forwardStates:{focused:true,checked:true},_applyIconPosition:function(q,r){var s={icon:this.getChildControl(l),label:this.getChildControl(k),closeButton:this.getShowCloseButton()?this.getChildControl(o):null};
for(var t in s){if(s[t]){this._remove(s[t]);
}}
switch(q){case d:this._add(s.label,{row:3,column:2});
this._add(s.icon,{row:1,column:2});

if(s.closeButton){this._add(s.closeButton,{row:0,column:4});
}break;
case g:this._add(s.label,{row:1,column:2});
this._add(s.icon,{row:3,column:2});

if(s.closeButton){this._add(s.closeButton,{row:0,column:4});
}break;
case m:this._add(s.label,{row:0,column:2});
this._add(s.icon,{row:0,column:0});

if(s.closeButton){this._add(s.closeButton,{row:0,column:4});
}break;
case j:this._add(s.label,{row:0,column:0});
this._add(s.icon,{row:0,column:2});

if(s.closeButton){this._add(s.closeButton,{row:0,column:4});
}break;
}},_createChildControlImpl:function(u,v){var w;

switch(u){case k:var w=new qx.ui.basic.Label(this.getLabel());
w.setAnonymous(true);
this._add(w,{row:0,column:2});
this._getLayout().setColumnFlex(2,1);
break;
case l:w=new qx.ui.basic.Image(this.getIcon());
w.setAnonymous(true);
this._add(w,{row:0,column:0});
break;
case o:w=new qx.ui.form.Button();
w.addListener(i,this._onCloseButtonClick,this);
this._add(w,{row:0,column:4});

if(!this.getShowCloseButton()){w.exclude();
}break;
}return w||qx.ui.form.RadioButton.prototype._createChildControlImpl.call(this,u);
},_onCloseButtonClick:function(){this.fireDataEvent(b,this);
},_applyShowCloseButton:function(x,y){if(x){this._showChildControl(o);
}else{this._excludeChildControl(o);
}},_applyCenter:function(z){var A=this._getLayout();

if(z){A.setColumnAlign(2,c,n);
}else{A.setColumnAlign(2,m,n);
}}}});
})();
(function(){var k="reload",j="button",i="black",h="Boolean",g="icon",f="page",e="track.util.EnhancedTabViewPage",d="interval",c="qx.event.type.Event",b="_applyShowReloadButton",a="red";
qx.Class.define(e,{extend:qx.ui.tabview.Page,events:{"reload":c},properties:{showReloadButton:{check:h,init:false,apply:b}},members:{_createChildControlImpl:function(l,m){var n;

switch(l){case j:n=new track.util.EnhancedTabButton;
n.setAllowGrowX(true);
n.setAllowGrowY(true);
n.setUserData(f,this);
n.addListener(k,this._onButtonReload,this);
break;
}return n||qx.ui.tabview.Page.prototype._createChildControlImpl.call(this,l);
},_applyShowReloadButton:function(o,p){this.getChildControl(j).setShowReloadButton(o);
},_onButtonReload:function(){this.fireEvent(k);
},blink:function(q){var r=this.getButton();

if(q>0){q*=2;
var s=new qx.event.Timer(1000);
s.addListener(d,function(){if(q%2==0){r.setTextColor(a);
}else{r.setTextColor(i);
}
if(0>=--q)s.stop();
});
s.start();
}},setIconSize:function(t){var u=this.getButton().getChildControl(g);
u.setWidth(t);
u.setHeight(t);
u.setScale(true);
}}});
})();
(function(){var o="middle",n="reload-button",m="left",l="icon",k="label",j="right",i="click",h="Boolean",g="center",f="track.util.EnhancedTabButton",c="reload",e="bottom",d="top",b="_applyShowReloadButton",a="qx.event.type.Data";
qx.Class.define(f,{extend:qx.ui.form.RadioButton,implement:qx.ui.form.IRadioItem,construct:function(){qx.ui.form.RadioButton.call(this);
var p=new qx.ui.layout.Grid(2,0);
p.setRowAlign(0,m,o);
p.setColumnAlign(0,j,o);
this._getLayout().dispose();
this._setLayout(p);
this.initShowReloadButton();
},events:{"reload":a},properties:{showReloadButton:{check:h,init:false,apply:b}},members:{_forwardStates:{focused:true,checked:true},_applyIconPosition:function(q,r){var s={icon:this.getChildControl(l),label:this.getChildControl(k),reloadButton:this.getShowReloadButton()?this.getChildControl(n):null};
for(var t in s){if(s[t]){this._remove(s[t]);
}}
switch(q){case d:this._add(s.label,{row:3,column:2});
this._add(s.icon,{row:1,column:2});

if(s.reloadButton){this._add(s.reloadButton,{row:0,column:4});
}break;
case e:this._add(s.label,{row:1,column:2});
this._add(s.icon,{row:3,column:2});

if(s.reloadButton){this._add(s.reloadButton,{row:0,column:4});
}break;
case m:this._add(s.label,{row:0,column:2});
this._add(s.icon,{row:0,column:0});

if(s.reloadButton){this._add(s.reloadButton,{row:0,column:4});
}break;
case j:this._add(s.label,{row:0,column:0});
this._add(s.icon,{row:0,column:2});

if(s.reloadButton){this._add(s.reloadButton,{row:0,column:4});
}break;
}},_createChildControlImpl:function(u,v){var w;

switch(u){case k:var w=new qx.ui.basic.Label(this.getLabel());
w.setAnonymous(true);
this._add(w,{row:0,column:2});
this._getLayout().setColumnFlex(2,1);
break;
case l:w=new qx.ui.basic.Image(this.getIcon());
w.setAnonymous(true);
this._add(w,{row:0,column:0});
break;
case n:w=new qx.ui.form.Button();
w.addListener(i,this._onReloadButtonClick,this);
this._add(w,{row:0,column:4});

if(!this.getShowReloadButton()){w.exclude();
}break;
}return w||qx.ui.form.RadioButton.prototype._createChildControlImpl.call(this,u);
},_onReloadButtonClick:function(){this.fireDataEvent(c,this);
},_applyShowReloadButton:function(x,y){if(x){this._showChildControl(n);
}else{this._excludeChildControl(n);
}},_applyCenter:function(z){var A=this._getLayout();

if(z){A.setColumnAlign(2,g,o);
}else{A.setColumnAlign(2,m,o);
}}}});
})();
(function(){var k="input info",j="changeMyAccount",i="Alias name:",h="<b>Save</b>",g="22/buddies_add.png",f="track.buddy.AccountConfigTab",d="16/actions/dialog-ok.png",c="First name:",b="button",a="execute",x="Email:",w="middle",v="Changing account for %1 ...",u="tab title",t="Phone number:",s="AjaxAnimator",r="Last name:",q="accountConfigTab.enabled",p="Account details",o="right",m="groupbox title",n="left",l="Change Account";
qx.Class.define(f,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(y){qx.core.Object.call(this);
this.buddyWindow=y;
this.trackGui=this.buddyWindow.trackGui;
this.buddyTO=this.buddyWindow.buddyTO;
this.loginName=this.buddyWindow.buddyTO.getLoginName();
this.aliasNameTextField=null;
this.lastNameTextField=null;
this.emailTextField=null;
this.phoneNumberTextField=null;
},members:{createTab:function(z){this.tabviewPage=new qx.ui.tabview.Page(this.trc(u,l),xbGetIcon(g));
this.tabviewPage.setLayout(new qx.ui.layout.VBox(10));
z.add(this.tabviewPage);

if(this.trackGui.watchee==null)return;
this.changeMyAccountListenerFunc=null;
var A=this._addBuddyGroup();
this.tabviewPage.add(A);
},buddyTOChanged:function(B){if(B==null)return;
this.buddyTO=B;

if(this.aliasNameTextField!=null){this.aliasNameTextField.setValue(B.getAlias());
}
if(this.firstNameTextField!=null){this.firstNameTextField.setValue(B.getFirstName());
}
if(this.lastNameTextField!=null){this.lastNameTextField.setValue(B.getLastName());
}
if(this.emailTextField!=null){this.emailTextField.setValue(B.getEmail());
}
if(this.phoneNumberTextField!=null){this.phoneNumberTextField.setValue(B.getPhoneNumber());
}},accountTOChanged:function(C){if(C==null)return;
this.buddyTOChanged(C.getBuddyTO());
},_addBuddyGroup:function(){var F=new qx.ui.groupbox.GroupBox(this.trc(m,p));
var E=new qx.ui.layout.Grid(6,4);
F.setLayout(E);
E.setRowAlign(0,n,w);
var H=0;
this.aliasNameTextField=new qx.ui.form.TextField(this.buddyTO.getAlias());
var G=new qx.ui.basic.Label(this.trc(k,i));
F.add(G,{row:H,column:0});
F.add(this.aliasNameTextField,{row:H,column:1});
H++;
this.firstNameTextField=new qx.ui.form.TextField(this.buddyTO.getFirstName());
var G=new qx.ui.basic.Label(this.trc(k,c));
F.add(G,{row:H,column:0});
F.add(this.firstNameTextField,{row:H,column:1});
H++;
this.lastNameTextField=new qx.ui.form.TextField(this.buddyTO.getLastName());
var G=new qx.ui.basic.Label(this.trc(k,r));
F.add(G,{row:H,column:0});
F.add(this.lastNameTextField,{row:H,column:1});
H++;
this.emailTextField=new qx.ui.form.TextField(this.buddyTO.getEmail());
var G=new qx.ui.basic.Label(this.trc(k,x));
F.add(G,{row:H,column:0});
F.add(this.emailTextField,{row:H,column:1});
H++;
this.phoneNumberTextField=new qx.ui.form.TextField(this.buddyTO.getPhoneNumber());
var G=new qx.ui.basic.Label(this.trc(k,t));
F.add(G,{row:H,column:0});
F.add(this.phoneNumberTextField,{row:H,column:1});
H++;
var D=new qx.ui.form.Button(this.trc(b,h),xbGetQxIcon(d));

with(D){setWidth(120);
setAlignX(o);
setRich(true);
}F.add(D,{row:H,column:1});
this.changeMyAccountListenerFunc=this.trackGui.watchee.getBuddyManager().getEventManager().addListener(j,function(I){var J=I.getData().accountTO;
this.accountTOChanged(J);
},this);
D.addListener(a,function(e){if(this.trackGui.watchee==null)return;
this.buddyTO.setAlias(org.xmlBlaster.util.trim(this.aliasNameTextField.getValue()));
this.buddyTO.setFirstName(org.xmlBlaster.util.trim(this.firstNameTextField.getValue()));
this.buddyTO.setLastName(org.xmlBlaster.util.trim(this.lastNameTextField.getValue()));
this.buddyTO.setEmail(org.xmlBlaster.util.trim(this.emailTextField.getValue()));
this.buddyTO.setPhoneNumber(org.xmlBlaster.util.trim(this.phoneNumberTextField.getValue()));
this.trackGui.startAjaxAnimator(this.trc(s,v,this.loginName));
this.trackGui.sendChangeAccount(this.buddyTO);
},this);

if(!xbProperties.getBoolean(q,true)){F.setEnabled(false);
}return F;
}},destruct:function(){if(this.changeMyAccountListenerFunc!=null){if(this.trackGui.watchee!=null)this.trackGui.watchee.getBuddyManager().getEventManager().removeListener(j,this.changeMyAccountListenerFunc);
this.changeMyAccountListenerFunc=null;
}this._disposeFields();
this._disposeObjects();
}});
})();
(function(){var i="legend",h="frame",g="middle",f="top",d="resize",c="qx.ui.groupbox.GroupBox",b="groupbox",a="_applyLegendPosition";
qx.Class.define(c,{extend:qx.ui.core.Widget,include:[qx.ui.core.MRemoteChildrenHandling,qx.ui.core.MRemoteLayoutHandling,qx.ui.core.MContentPadding,qx.ui.form.MForm],implement:[qx.ui.form.IForm],construct:function(j,k){qx.ui.core.Widget.call(this);
this._setLayout(new qx.ui.layout.Canvas);
this._createChildControl(h);
this._createChildControl(i);
if(j!=null){this.setLegend(j);
}
if(k!=null){this.setIcon(k);
}},properties:{appearance:{refine:true,init:b},legendPosition:{check:[f,g],init:g,apply:a,themeable:true}},members:{_forwardStates:{invalid:true},_createChildControlImpl:function(l,m){var n;

switch(l){case h:n=new qx.ui.container.Composite();
this._add(n,{left:0,top:6,right:0,bottom:0});
break;
case i:n=new qx.ui.basic.Atom();
n.addListener(d,this._repositionFrame,this);
this._add(n,{left:0,right:0});
break;
}return n||qx.ui.core.Widget.prototype._createChildControlImpl.call(this,l);
},_getContentPaddingTarget:function(){return this.getChildControl(h);
},_applyLegendPosition:function(e){if(this.getChildControl(i).getBounds()){this._repositionFrame();
}},_repositionFrame:function(){var p=this.getChildControl(i);
var o=this.getChildControl(h);
var q=p.getBounds().height;
if(this.getLegendPosition()==g){o.setLayoutProperties({"top":Math.round(q/2)});
}else if(this.getLegendPosition()==f){o.setLayoutProperties({"top":q});
}},getChildrenContainer:function(){return this.getChildControl(h);
},setLegend:function(r){var s=this.getChildControl(i);

if(r!==null){s.setLabel(r);
s.show();
}else{s.exclude();
}},getLegend:function(){return this.getChildControl(i).getLabel();
},setIcon:function(t){this.getChildControl(i).setIcon(t);
},getIcon:function(){this.getChildControl(i).getIcon();
}}});
})();
(function(){var m="button",k="execute",j="info box",h="16/password_16.png",g="infobox",f="permissionTab.enabled",d="groupbox title",c="PermissionTemplate",b="Permissions I have got from '%1'",a="Left click: Remove our relation; Right click: Remove all relations between %1",U="Relation to %1 is destroyed",T="16/actions/dialog-ok.png",S="See history tracks",R="Permission hist",Q="Show my position",P="Remove buddy %1",O="%1 is not my buddy anymore",N=" - ",M="Send messages to me",L="Permission status",t="status",u="Permission gps",r="cfg",s="alarm",p="xsms",q="Permission alarm",n="Configure device",o="tab title",v="Permission cfg",w="Granted to '%1'",D="<b>",B="See alarms",F="Buddy Permissions",E="gps",H="track.buddy.PermissionTab",G="Permission xsms",y="click",K="</b>",J="16/actions/edit-delete.png",I="hist",x="The new permissions are saved",z="22/apps/utilities-keyring.png",A="My online/battery status",C="Submit";
qx.Class.define(H,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(V){qx.core.Object.call(this);
this.buddyWindow=V;
this.trackGui=this.buddyWindow.trackGui;
this.log=this.trackGui.getLogger();
this.permissionsGrantedConfigVertBox=null;
},members:{createTab:function(W){this.tabviewPage=new qx.ui.tabview.Page(this.trc(o,F),xbGetQxIcon(z));
this.tabviewPage.setLayout(new qx.ui.layout.HBox(8));
W.add(this.tabviewPage);
var X=this.createPermissionsGrantedConfig();
this.tabviewPage.add(X);
var Y=this.createPermissionsGotConfig();
this.tabviewPage.add(Y);
return this.tabviewPage;
},createPermissionsGrantedConfig:function(){var be=xbGetIcon(h);
var bc=new qx.ui.groupbox.GroupBox(this.trc(d,w,this.buddyWindow.buddyTO.getLoginName()),be);
bc.setLayout(new qx.ui.layout.VBox());
var ba=new qx.ui.container.Composite(new qx.ui.layout.VBox(8));
this.permissionsGrantedConfigVertBox=new qx.ui.container.Composite(new qx.ui.layout.VBox(8));
ba.add(this.permissionsGrantedConfigVertBox);
bc.add(ba);
this.updatePermissionGrantedCheckBoxes();
var bb=new qx.ui.form.Button(this.trc(m,C),xbGetQxIcon(T));
bb.setMarginTop(12);
bb.addListener(k,function(e){var bh=new Array();
var bg=this.permissionsGrantedConfigVertBox.getChildren();

for(var i=0,l=bg.length;i<l;i++){var bf=bg[i];
var bi=bf.getUserData(c);

if(bi!=null){if(bf.getValue()){var bj=new net.watchee.BuddyPermissionTO(bi.getName(),bi.getDescription());
bh.push(bj);
}}}this.buddyWindow.buddyTO.setPermissionsOutbound(bh);
this.trackGui.sendChangePermission(this.buddyWindow.buddyTO);
this.log.debug("Send changed permissions: "+bh);
this.trackGui.infoMsgBox(this.trc(j,x));
},this);
ba.add(bb);
var bd=null;

if(!this.buddyWindow.buddyTO.isCurrentLoginAccount()){bd=new qx.ui.form.Button(this.trc(m,P,this.buddyWindow.buddyTO.getLoginName()),xbGetQxIcon(J));
bd.setMarginTop(12);
bd.setToolTipText(this.trc(j,a,this.buddyWindow.buddyTO.getLoginName()));
bd.addListener(k,function(e){this.onRemoveEvent(false);
},this);
bd.addListener(y,function(e){var bk=true;
this.onRemoveEvent(bk);
},this);
ba.add(bd);
}
if(!xbProperties.getBoolean(f,true)){bc.setEnabled(false);
}return bc;
},onRemoveEvent:function(bm){this.trackGui.sendRemoveBuddy(this.buddyWindow.buddyTO,bm);

if(bm){this.trackGui.infoMsgBox(this.trc(g,U,this.buddyWindow.buddyTO.getLoginName()));
}else{this.trackGui.infoMsgBox(this.trc(g,O,this.buddyWindow.buddyTO.getLoginName()),6000);
}this.trackGui.getBuddiesWidget().removeBuddy(this.buddyWindow.buddyTO.getLoginName());
},createPermissionsGotConfig:function(){var bq=xbGetIcon(h);
var bo=false;
var bn=new qx.ui.groupbox.GroupBox(this.trc(d,b,this.buddyWindow.buddyTO.getLoginName()),bq);
bn.setLayout(new qx.ui.layout.VBox());
bn.setEnabled(bo);
bn.setSelectable(bo);
this.permissionsGotConfigVertBox=new qx.ui.container.Composite(new qx.ui.layout.VBox(8));
bn.add(this.permissionsGotConfigVertBox);

if(this.trackGui.watchee==null)return bn;
this.updatePermissionGotCheckBoxes();

if(!xbProperties.getBoolean(f,true)){bn.setEnabled(false);
}return bn;
},getDescriptionText:function(br){if(E==br.getName())return this.trc(u,Q);
else if(s==br.getName())return this.trc(q,B);
else if(I==br.getName())return this.trc(R,S);
else if(t==br.getName())return this.trc(L,A);
else if(r==br.getName())return this.trc(v,n);
else if(p==br.getName())return this.trc(G,M);
else return br.getDescription();
},getPermissionLabelText:function(bs,bt){var bu=bt.getName()+N+this.getDescriptionText(bt);

if(bs)return D+bu+K;
return bu;
},updatePermissionGotCheckBoxes:function(){if(this.permissionsGotConfigVertBox==null)return;
this.permissionsGotConfigVertBox.removeAll();
var bz=this.trackGui.watchee.getBuddyManager().getFriendOf(this.buddyWindow.buddyTO.getLoginName());
var bv=this.trackGui.watchee.getPermissionTemplateList();

if(bv!=null){for(var i=0,l=bv.getPermissionTemplates().length;i<l;i++){var by=bv.getPermissionTemplates()[i];
var bx=(bz!=null&&bz.hasPermission(by.getName()));
var bw=new qx.ui.form.CheckBox(this.getPermissionLabelText(bx,by));
bw.setRich(true);
bw.setValue(bx);
this.permissionsGotConfigVertBox.add(bw);
}}},updatePermissionGrantedCheckBoxes:function(){if(this.permissionsGrantedConfigVertBox==null)return;
this.permissionsGrantedConfigVertBox.removeAll();
var bA=this.trackGui.watchee.getPermissionTemplateList();

if(bA!=null){for(var i=0,l=bA.getPermissionTemplates().length;i<l;i++){var bC=bA.getPermissionTemplates()[i];
var bB=new qx.ui.form.CheckBox(this.getPermissionLabelText(false,bC));
bB.setUserData(c,bC);
bB.setValue(this.buddyWindow.buddyTO.hasPermissionOutbound(bC.getName()));
this.permissionsGrantedConfigVertBox.add(bB);
}}}},destruct:function(){this._disposeFields();
this._disposeObjects();
}});
})();
(function(){var k="pressed",j="abandoned",i="hovered",h="Boolean",g="Space",f="undetermined",d="Enter",c="checked",b="mousedown",a="_applyTriState",w="mouseout",v="changeValue",u="keydown",t="_applyGroup",s="button",r="execute",q="qx.ui.form.RadioGroup",p="_applyValue",o="qx.ui.form.ToggleButton",n="mouseover",l="keyup",m="mouseup";
qx.Class.define(o,{extend:qx.ui.basic.Atom,include:[qx.ui.core.MExecutable],implement:[qx.ui.form.IBooleanForm,qx.ui.form.IExecutable,qx.ui.form.IRadioItem],construct:function(x,y){qx.ui.basic.Atom.call(this,x,y);
this.addListener(n,this._onMouseOver);
this.addListener(w,this._onMouseOut);
this.addListener(b,this._onMouseDown);
this.addListener(m,this._onMouseUp);
this.addListener(u,this._onKeyDown);
this.addListener(l,this._onKeyUp);
this.addListener(r,this._onExecute,this);
},properties:{appearance:{refine:true,init:s},focusable:{refine:true,init:true},value:{check:h,nullable:true,event:v,apply:p,init:false},group:{check:q,nullable:true,apply:t},triState:{check:h,apply:a,nullable:true,init:null}},members:{_applyGroup:function(z,A){if(A){A.remove(this);
}
if(z){z.add(this);
}},_applyValue:function(B,C){B?this.addState(c):this.removeState(c);

if(this.isTriState()){if(B===null){this.addState(f);
}else if(C===null){this.removeState(f);
}}},_applyTriState:function(D,E){this._applyValue(this.getValue());
},_onExecute:function(e){this.toggleValue();
},_onMouseOver:function(e){if(e.getTarget()!==this){return;
}this.addState(i);

if(this.hasState(j)){this.removeState(j);
this.addState(k);
}},_onMouseOut:function(e){if(e.getTarget()!==this){return;
}this.removeState(i);

if(this.hasState(k)){if(!this.getValue()){this.removeState(k);
}this.addState(j);
}},_onMouseDown:function(e){if(!e.isLeftPressed()){return;
}this.capture();
this.removeState(j);
this.addState(k);
e.stopPropagation();
},_onMouseUp:function(e){this.releaseCapture();

if(this.hasState(j)){this.removeState(j);
}else if(this.hasState(k)){this.execute();
}this.removeState(k);
e.stopPropagation();
},_onKeyDown:function(e){switch(e.getKeyIdentifier()){case d:case g:this.removeState(j);
this.addState(k);
e.stopPropagation();
}},_onKeyUp:function(e){if(!this.hasState(k)){return;
}
switch(e.getKeyIdentifier()){case d:case g:this.removeState(j);
this.execute();
this.removeState(k);
e.stopPropagation();
}}}});
})();
(function(){var g="label",f="checkbox",e="qx.ui.form.CheckBox",d="value",c="toolTipText",b="enabled",a="menu";
qx.Class.define(e,{extend:qx.ui.form.ToggleButton,include:[qx.ui.form.MForm,qx.ui.form.MModelProperty],implement:[qx.ui.form.IForm,qx.ui.form.IModel],construct:function(h){qx.ui.form.ToggleButton.call(this,h);
this.setValue(false);
},properties:{appearance:{refine:true,init:f},allowGrowX:{refine:true,init:false}},members:{_forwardStates:{invalid:true,focused:true,undetermined:true,checked:true,hovered:true},_bindableProperties:[b,g,c,d,a]}});
})();
(function(){var v="input info",u="Add New Buddy",t="changeAccount",s="Please enter the buddy login name, the name is case sensitive.",r="16/actions/dialog-ok.png",q="info box",p="<b>Add Buddy</b>",o="addBuddyTab.enabled",n="(Buddy has empty permissions)",m="Adding buddy %1 ...",f="execute",l="AjaxAnimator",i="22/buddies_add.png",c="right",b="track.buddy.AddBuddyTab",h="groupbox title",g="left",j="middle",a="button",k="tab title",d="Login name of buddy (case sensitive):";
qx.Class.define(b,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(w){qx.core.Object.call(this);
this.buddyWindow=w;
this.trackGui=this.buddyWindow.trackGui;
},members:{createTab:function(x){this.tabviewPage=new qx.ui.tabview.Page(this.trc(k,u),xbGetIcon(i));
this.tabviewPage.setLayout(new qx.ui.layout.VBox(10));
x.add(this.tabviewPage);

if(this.trackGui.watchee==null)return;
this.changeAccountListenerFunc=null;
var y=this._addBuddyGroup();
this.tabviewPage.add(y);
},_addBuddyGroup:function(){var B=new qx.ui.groupbox.GroupBox(this.trc(h,u));
var A=new qx.ui.layout.Grid(6,4);
B.setLayout(A);
A.setRowAlign(0,g,j);
A.setRowHeight(0,22);
A.setRowHeight(1,30);
var C=new qx.ui.form.TextField();
var D=new qx.ui.basic.Label(this.trc(v,d));
D.setRich(true);
B.add(D,{row:0,column:0});
B.add(C,{row:0,column:1});
B.add(new qx.ui.basic.Label(this.trc(v,n)),{row:1,column:0});
var z=new qx.ui.form.Button(this.trc(a,p),xbGetQxIcon(r));

with(z){setWidth(120);
setAlignX(c);
setRich(true);
}B.add(z,{row:1,column:1});
this.changeAccountListenerFunc=this.trackGui.watchee.getBuddyManager().getEventManager().addListener(t,function(E){},this);
z.addListener(f,function(e){if(this.trackGui.watchee==null)return;
var G=org.xmlBlaster.util.trim(C.getValue());

if(!org.xmlBlaster.util.isFilled(G)){this.trackGui.infoMsgBox(this.trc(q,s));
return;
}this.trackGui.startAjaxAnimator(this.trc(l,m,G));
var F=new net.watchee.BuddyTO(this.trackGui.watchee,G);
this.trackGui.sendAddBuddy(F);
},this);

if(!xbProperties.getBoolean(o,true)){B.setEnabled(false);
}return B;
}},destruct:function(){if(this.changeAccountListenerFunc!=null){if(this.trackGui.watchee!=null)this.trackGui.watchee.getBuddyManager().getEventManager().removeListener(t,this.changeAccountListenerFunc);
this.changeAccountListenerFunc=null;
}this._disposeFields();
this._disposeObjects();
}});
})();
(function(){var cm="",cl=",",ck="\"",cj="csv",ci="tooltip",ch="input info",cg="__new__",cf="status",ce="accountPropertyKey",cd="errorMsgBox",bv="globalPropertyKey",bu="middle",bt="left",bs="/",br="legend",bq="The report will be send to the given email address",bp=";",bo='</pc>',bn="</font>",bm="button",ct='<pc>',cu="jrxmlUrl",cr="String",cs="reportDelivery",cp="changeSelection",cq="errorMsg",cn="mailtoCC",co="accountPropertiesChanged",cv="text",cw="groupbox",bT="headerText",bS="execute",bV="headerIcon",bU="mailtoBCC",bX="mailto",bW="logoutPre",ca="label_",bY="label",bR='<pr k="reportClazzName">net.watchee.report.PoiReport</pr>',bQ="footerText",a="Example: http://server.com/myIcon.png",b="beforeClose",c="reportDelivery=\"",d="http://server.com/icon.png",f="poiPrintWindow.mailto.validate.syntax",g="Appears at top of each page",h="addInputControl",j="application/pdf",k="Email CC:",m="reportTemplate/file:///home/watchee/watcheereport/jrxml/poi_report_a4.jrxml",cA="<",cz="Select the document",cy="<b><font color='brown'>Processing '%1'...</font></b><br />count=%2,state=%3",cx=":",cE="<b><font color='red'>Error code %1</font></b><br />%2",cD="Please choose a report or save the settings first",cC="Report description of '%1' is saved",cB="reportTemplate/file:///home/watchee/watcheereport/jrxml/fahrtenbuch_a4.jrxml",cG="Unique report name:",cF="textField",L="=",M="32/actions/document-send.png",J="PDF",K="Your query did not find any data, please check your settings (account, start data, end date)",P="Please enter a unique name for the report type",Q="mailto:",N="Create report",O="QueryReport",H="Please choose a unique name",I="headerText=",u="reportClazzName",t="user.noDataFound",w="<font color='red'>",v="footerText=",q="reportMetaInfoName",p="No rows selected for report.</br><i>You can select multiple rows by holding shift/ctrl while clicking</i>",s="reportTemplate/file:///home/watchee/watcheereport/jrxml/poi_report_a4_multipage.jrxml",r="Report description of '%1' is deleted",o="Header text:",n="*New*",V="Report settings",W="<b><font color='green'>Success, PDF '%1' (%2 bytes) created and sent to email address</font></b>",X="</font></b>",Y="Save",R='<pr k="label">Fahrtenbuch A4</pr>',S="32/actions/document-save.png",T="<font color='green'>",U="Please enter the email address",ba="window title",bb="Header icon link:",E="mailtoBCC:",D="listItem",C="error",B="Appears at bottom of each page",A="Email TO:",z="incrementalResponse=true",y='<pr k="label">POI Report (multiple POI per A4)</pr>',x="Report parameters",G="Footer text:",F="22/devices/pda.png",bc="Select the report layout template",bd="<b><font color='red'>Timeout</font></b>, no response after %1 sec",be="uniqueReportFileName",bf="click",bg="Please save changes first",bh="16/status/mail-replied.png",bi="22/actions/document-properties.png",bj="countPoi",bk="<font color='yellow'>",bl="Report '%1' is currently generated",bz="headerIcon=",by="could not set Default value, wrong datatype?: ",bx="size",bw='<pr k="reportClazzName">net.watchee.report.DriverLogbookReport</pr>',bD="<b><font color='red'>",bC='<pr k="label">POI Report (one A4 per POI)</pr>',bB="Report description of '%1' was not saved: %2",bA='<pr k="label_de">POI Bericht (eine A4 pro POI)</pr>',bF='<pr k="label_de">POI Bericht (mehrere POI pro A4)</pr>',bE="mailtoCC:",bM="32/places/user-trash.png",bN="Delete",bK="track.poiprint.ReportPrintWindow ctor arg does not implement interface track.poiprint.IPrintWindowModel",bL="track.poiprint.ReportPrintWindow",bI="state",bJ="appear",bG="jrxmlUrl=",bH="Report Generator for %1",bO="acroread_16x16.png",bP="Send request with all data chosen, this takes a few moments",cc="22/actions/edit-copy.png",cb="Report description of '%1' was not deleted: %2";
qx.Class.define(bL,{extend:track.util.WindowWithHelpIcon,construct:function(cH,cI){track.util.WindowWithHelpIcon.call(this);
this.trackGui=cH;
this.iPrintWindowModel=cI;
var cK=cI.constructor;
var cJ=qx.Class.hasInterface(cK,track.poiprint.IPrintWindowModel);
if(!cJ){this.trackGui.errorMsgBoxDeveloper(bK);
}this.setLayout(new qx.ui.layout.VBox(3));
this.setUseMoveFrame(true);
this.setCaption(this.trc(ba,bH,cI.getTitle()));
this.setIcon(xbGetQxIcon(F));
this.reportMetaInfoNameSelectBox=null;
this.poiConfigManager=null;
this.programmaticSetSelected=false;
this.lastSelectedAccountPropertyKey=null;
this.reportClazzNameFilter=null;
this.KEY_REPORT_METAINFO_PREFIX="reportMetaInfo/";
this.KEY_REPORT_TEMPLATES_PREFIX="reportTemplate/";
this.currentAccountPropertyHashtable=null;
this.validationManager=null;
this.previousGuiCsv=cm;
this.reportsAreProcessing=new org.xmlBlaster.util.Hashtable();
this.accountPropertiesChangedListenerFunc=null;
this.logoutPreListenerFunc=null;
this.windowId=this.iPrintWindowModel.getTitle();
this.setMaxWidth(440);
this.setMinWidth(440);
},members:{getWindowId:function(){return this.windowId;
},getAccountPropertyKey:function(name){var name=name||this.getSelectedReportMetaInfoName();
var cL=this.KEY_REPORT_METAINFO_PREFIX+name;
return cL;
},getGlobalPropertyKey:function(cM){var cM=cM||this.getSelectedReportTemplateName();
var cN=this.KEY_REPORT_TEMPLATES_PREFIX+cM;
return cN;
},getSelectedReportMetaInfoName:function(){var cO=this.reportMetaInfoNameSelectBox.getSelection()[0];
var cP=cO.getUserData(ce);
var name=this.extractReportMetaInfoName(cP);
return name;
},getSelectedReportMetaInfoCsv:function(){var cR=this.reportMetaInfoNameSelectBox.getSelection()[0];
var cQ=cR.getUserData(cj);
return cQ;
},isNewSelectedReportMetaInfoName:function(){var cT=this.reportMetaInfoNameSelectBox.getSelection()[0];
var cS=cT.getUserData(cj);
return cg==cS;
},getSelectedReportTemplateName:function(){var cU=this.reportTemplateSelectBox.getSelection()[0];
var cV=cU.getUserData(bv);
var name=this.extractReportTemplateJrxmlUrl(cV);
return name;
},extractReportMetaInfoName:function(cW){var cW=cW||null;

if(cW==null)return null;
var cX=cW.split(bs);

if(cX.length<2)return cW;
return cX[1];
},extractReportTemplateName:function(cY){var cY=cY||null;

if(cY==null)return null;
var da=cY.lastIndexOf(bs);

if(da==-1||da>=cY.length-2)return cY;
return cY.substring(da+1);
},extractReportTemplateJrxmlUrl:function(db){var db=db||null;

if(db==null)return null;
var dc=db.indexOf(bs);

if(dc==-1||dc>=db.length-2)return db;
return db.substring(dc+1);
},extractReportTemplateLabel:function(dd,de){var name=this.extractReportTemplateName(dd);
var dg=this._parsePoiTemplateDescription(de);
var df=this.trackGui.getMyLanguageId();

if(dg.contains(ca+df)){return dg.get(ca+df,name);
}else if(dg.contains(bY)){return dg.get(bY,name);
}return name;
},loadAllReportMetaInfo:function(){var dh=this.trackGui.getMyAccountTO().getAccountPropertiesStartsWith(this.KEY_REPORT_METAINFO_PREFIX);
this.insertSelectBoxMetaInfoNames(dh);

if(this.lastSelectedAccountPropertyKey!=null){track.util.GuiUtils.selectByUserData(this.reportMetaInfoNameSelectBox,ce,this.lastSelectedAccountPropertyKey);
}else if(this.defaultMetaInfoPropertyPair!=null){track.util.GuiUtils.selectByUserData(this.reportMetaInfoNameSelectBox,ce,this.defaultMetaInfoPropertyPair.getKey());
}},loadAllReportTemplates:function(){var dl=new net.watchee.PropertyPair(cB,ct+bw+R+bo,true,cr,null,null);
var di=new net.watchee.PropertyPair(m,ct+bR+bC+bA+bo,true,cr,null,null);
var dk=new net.watchee.PropertyPair(s,ct+bR+y+bF+bo,true,cr,null,null);
var dm=[di,dk,dl];
var dn=new Array();

for(var i=0,l=dm.length;i<l;i++){var dj=dm[i];

if(this.isUsableTemplate(dj)){dn.push(dj);
}}this.insertSelectBoxTemplates(dn);
},isStatisticReport:function(){return !this.isStatisticReport();
},isPoiReport:function(){this.iPrintWindowModel.isPoiReport();
},isUsableMetaInfo:function(dp){var dr=this.getGlobalPropertyKey(dp);
var dq=this.reportTemplateSelectBox.getChildren();

for(var i=0,l=dq.length;i<l;i++){var ds=dq[i];

if(dr==ds.getUserData(bv)){var dt=ds.getUserData(cj);

if(this.isUsableTemplateByCsv(dt)){return true;
}}}},isUsableTemplate:function(du){var du=du||null;

if(du==null)return false;
var dv=du.getValue();
return this.isUsableTemplateByCsv(dv);
},_parsePoiTemplateDescription:function(dw){var dA=null;

if(dw.indexOf(cA)==0){var dz=net.watchee.PropertyCollection.parseXml(dw);
var dA=new org.xmlBlaster.util.Hashtable();
var dC=dz.size();
var dx=dz.getKeys();

for(var i=0;i<dC;i++){var dB=dx[i];
var dy=dz.get(dB);
dA.put(dB,dy.getValue());
}}else{dA=org.xmlBlaster.util.Hashtable.parseCSV(dw);
}return dA;
},isUsableTemplateByCsv:function(dD){var dD=dD||null;

if(dD==null)return false;
var dE=this._parsePoiTemplateDescription(dD);
var dF=dE.get(u,cm);

if(this.reportClazzNameFilter==null||this.reportClazzNameFilter==dF){return true;
}return false;
},insertSelectBoxMetaInfoNames:function(dG){this.programmaticSetSelected=true;
this.reportMetaInfoNameSelectBox.removeAll();
this.reportMetaInfoNameSelectBox.add(this._createListItemMetaInfoName(this.newReportMetaInfoName,cg));
this.defaultMetaInfoPropertyPair=null;

for(var i=0;i<dG.length;i++){this.defaultMetaInfoPropertyPair=dG[i];
var dJ=dG[i].getKey();
var dK=dG[i].getValue();
var dH=org.xmlBlaster.util.Hashtable.parseCSVQuoted(dK);
var dI=dH.get(cu);

if(!this.isUsableMetaInfo(dI)){continue;
}this.lastSelectedAccountPropertyKey=dJ;
var dL=this._createListItemMetaInfoName(dJ,dK);
this.reportMetaInfoNameSelectBox.add(dL);
}this.programmaticSetSelected=false;
},insertSelectBoxTemplates:function(dM){this.programmaticSetSelected=true;
this.reportTemplateSelectBox.removeAll();

for(var i=0;i<dM.length;i++){var dN=dM[i].getKey();
var dQ=dM[i].getValue();
var dO=this.extractReportTemplateLabel(dN,dQ);
var dR=xbGetQxIcon(cc);
var dP=new qx.ui.form.ListItem(dO,dR,dQ);
dP.setUserData(bv,dN);
dP.setUserData(cj,dQ);
this.reportTemplateSelectBox.add(dP);
}this.programmaticSetSelected=false;
},selectTemplate:function(dS){this.programmaticSetSelected=true;
track.util.GuiUtils.selectByUserData(this.reportTemplateSelectBox,bv,dS);
this.onTemplateChangeSelection(this.reportTemplateSelectBox.getSelection()[0]);
this.programmaticSetSelected=false;
},_createListItemMetaInfoName:function(dT,dU){var dV=this.extractReportMetaInfoName(dT);
var dX=xbGetQxIcon(bi);
var dW=new qx.ui.form.ListItem(dV,dX,dU);
dW.setUserData(ce,dT);
dW.setUserData(cj,dU);
return dW;
},saveAccountProperty:function(){var ec=this.getAccountPropertyKey();

if(this.isNewSelectedReportMetaInfoName()){ec=this.getAccountPropertyKey(this.metaInfoName.getValue());
}var dY=ec.split(bs);

if(dY.length<2||dY[1].length<1){this.trackGui.errorMsgBox(this.trc(cF,H));
return;
}var eb=this.validationManager.validate();

if(!eb){return;
}var ed=this.extractFromGui();

if(this.previousGuiCsv==ed){this.info("No changes to save");
return;
}this.lastSelectedAccountPropertyKey=ec;
var ea=this.extractFromGui();
this.trackGui.sendChangeAccountProperty(this.trackGui.getMyLoginName(),ec,ea,function(ee,ef,eg){var eh=this.extractReportMetaInfoName(ec);

if(ee.isException()){this.writeToStatusLine(org.xmlBlaster.util.LOGLEVEL_ERROR,this.trc(cf,bB,eh,ee.getErrorHtmlMessage()));
}else{this.writeToStatusLine(org.xmlBlaster.util.LOGLEVEL_INFO,this.trc(cf,cC,eh));
this.loadAllReportMetaInfo();
}},this,ec);
},deleteAccountProperty:function(){var ej=this.getAccountPropertyKey();

if(this.isNewSelectedReportMetaInfoName()){return;
}var ei=cm;
this.trackGui.sendChangeAccountProperty(this.trackGui.getMyLoginName(),ej,ei,function(ek,el,em){var eo=this.extractReportMetaInfoName(ej);

if(ek.isException()){this.writeToStatusLine(org.xmlBlaster.util.LOGLEVEL_ERROR,this.trc(cf,cb,eo,ek.getErrorHtmlMessage()));
}else{this.trackGui.getMyAccountTO().removeAccountProperty(ej);
this.lastSelectedAccountPropertyKey=null;
this.writeToStatusLine(org.xmlBlaster.util.LOGLEVEL_INFO,this.trc(cf,r,eo));
var en=this.extractReportMetaInfoName(ej);
this.reportsAreProcessing.remove(en);
var ep=this.reportsAreProcessing.remove(em.bounceId);
this.loadAllReportMetaInfo();
}},this,ej);
},sendCreateReport:function(eq,er){var ew=null;
var ey=new net.watchee.PropertyCollection(O);
var es=this.getSelectedReportMetaInfoName();
var et=this.validationManager.validate();

if(!et){return;
}
if(this.isNewSelectedReportMetaInfoName()){this.trackGui.errorMsgBox(this.trc(cd,cD));
return;
}
if(er&&this.reportsAreProcessing.contains(es)){this.trackGui.errorMsgBox(this.trc(cd,bl,es));
return;
}ey.addKeyValue(q,es);
var eA=this.iPrintWindowModel.fillFilterData(ey);

if(!eA&&this.isPoiReport()){this.trackGui.errorMsgBox(this.trc(cd,p));
return;
}
if(!eq){var ez=org.xmlBlaster.util.trim(this.emailTo.getValue());

if(ez==null)ez=cm;
ey.addKeyValue(bX,ez);
ez=org.xmlBlaster.util.trim(this.emailCC.getValue());

if(ez==null)ez=cm;
ey.addKeyValue(cn,ez);
ez=org.xmlBlaster.util.trim(this.emailBCC.getValue());

if(ez==null)ez=cm;
ey.addKeyValue(bU,ez);
}else{var eu=this.extractFromGui();

if(this.previousGuiCsv!=eu){this.trackGui.errorMsgBox(this.trc(cd,bg));
return;
}}var eC=this.trackGui.sendQueryReport(ey,this.responseOrExceptionOrTimeoutReceived_report,this,ew);
this.reportsAreProcessing.put(eC,es);
var eB=this.getSelectedReportMetaInfoCsv();
this.reportsAreProcessing.put(es,eB);
},writeToStatusLine:function(eD,eE){if(eD==org.xmlBlaster.util.LOGLEVEL_INFO){eE=T+eE+bn;
}else if(eD==org.xmlBlaster.util.LOGLEVEL_WARN){eE=bk+eE+bn;
}else if(eD==org.xmlBlaster.util.LOGLEVEL_ERROR){eE=w+eE+bn;
}this.warningLabel.setValue(eE);
},create:function(eF){this.reportClazzNameFilter=eF||null;
this.info("track.poiprint.ReportPrintWindow.create() enter");
this.addListener(bJ,function(){},this);
this.validationManager=new qx.ui.form.validation.Manager();
var eG=new qx.ui.groupbox.GroupBox(this.trc(br,cz));
eG.setContentPadding(2);
eG.setLayout(new qx.ui.layout.HBox(3));
this.reportMetaInfoNameSelectBox=new qx.ui.form.SelectBox();
this.newReportMetaInfoName=this.trc(D,n);
this.newReportMetaInfoNameListItem=this._createListItemMetaInfoName(this.newReportMetaInfoName,cg);
this.reportMetaInfoNameSelectBox.add(this.newReportMetaInfoNameListItem);
var eM=new qx.ui.form.Button(this.trc(bm,Y),xbGetQxIcon(S));
eM.addListener(bS,function(){this.saveAccountProperty();
},this);
this.delButton=new qx.ui.form.Button(this.trc(bm,bN),xbGetQxIcon(bM));
this.delButton.setEnabled(false);
this.delButton.addListener(bS,function(){this.deleteAccountProperty();
},this);
eG.add(this.reportMetaInfoNameSelectBox,{flex:1});
eG.add(eM);
eG.add(this.delButton);
this.add(eG);
this.reportMetaInfoNameSelectBox.addListener(cp,this.onReportMetaInfoNameSelectBoxChangeSelectionEvent,this);
var eI=new qx.ui.basic.Label(this.trc(br,bc));
this.add(eI);
this.reportTemplateSelectBox=new qx.ui.form.SelectBox();
this.reportTemplateSelectBox.addListener(cp,this.onTemplateChangeSelectionEvent,this);
this.loadAllReportTemplates();
this.add(this.reportTemplateSelectBox);
var eK=new qx.ui.groupbox.GroupBox(this.trc(cw,V));
var eH=new qx.ui.layout.Grid(6,4);
eK.setLayout(eH);
eH.setColumnAlign(0,bt,bu);
eH.setColumnAlign(1,bt,bu);
var eN=0;
this.metaInfoName=new qx.ui.form.TextField();
this.metaInfoName.setWidth(160);
this.metaInfoName.setMaxWidth(160);
this.metaInfoName.setMaxLength(50);
this.metaInfoName.setRequired(true);
this.metaInfoName.setInvalidMessage(P);
this.validationManager.add(this.metaInfoName);
eK.add(new qx.ui.basic.Label(this.trc(ch,cG)),{row:eN,column:0});
eK.add(this.metaInfoName,{row:eN,column:1});
eN++;
this.headerText=new qx.ui.form.TextField();
this.headerText.setToolTipText(this.trc(ci,g));
this.headerText.setWidth(300);
this.headerText.setMaxWidth(400);
this.headerText.setMaxLength(400);
eK.add(new qx.ui.basic.Label(this.trc(ch,o)),{row:eN,column:0});
eK.add(this.headerText,{row:eN,column:1});
eN++;
this.headerIcon=new qx.ui.form.TextField();
this.headerIcon.setMaxWidth(400);
this.headerIcon.setMaxLength(400);
this.headerIcon.setToolTipText(this.trc(ci,a));
var eI=new qx.ui.basic.Label(this.trc(ch,bb));
eI.setToolTipText(this.trc(ci,a));
eK.add(eI,{row:eN,column:0});
eK.add(this.headerIcon,{row:eN,column:1});
eN++;
this.footerText=new qx.ui.form.TextField();
this.footerText.setToolTipText(this.trc(ci,B));
this.footerText.setMaxWidth(400);
this.footerText.setMaxLength(400);
eK.add(new qx.ui.basic.Label(this.trc(ch,G)),{row:eN,column:0});
eK.add(this.footerText,{row:eN,column:1});
eN++;
this.emailTo=new qx.ui.form.TextField();
this.emailTo.setToolTipText(this.trc(ci,bq));
this.emailTo.setMaxWidth(400);
this.emailTo.setMaxLength(400);
this.emailTo.setRequired(true);
this.emailTo.setInvalidMessage(U);

if(xbProperties.getBoolean(f,true)){this.validationManager.add(this.emailTo,qx.util.Validate.email());
}else{this.validationManager.add(this.emailTo);
}eK.add(new qx.ui.basic.Label(this.trc(ch,A)),{row:eN,column:0});
eK.add(this.emailTo,{row:eN,column:1});
eN++;
this.emailCC=new qx.ui.form.TextField();
this.emailCC.setToolTipText(this.trc(ci,bq));
this.emailCC.setMaxWidth(400);
this.emailCC.setMaxLength(400);
eK.add(new qx.ui.basic.Label(this.trc(ch,k)),{row:eN,column:0});
eK.add(this.emailCC,{row:eN,column:1});
eN++;
this.emailBCC=new qx.ui.form.TextField();
this.emailCC.setToolTipText(this.trc(ci,bq));
this.emailBCC.setMaxWidth(400);
this.emailBCC.setMaxLength(400);
this.add(eK);
this.group2=new qx.ui.groupbox.GroupBox(this.trc(cw,x));
var eJ=new qx.ui.layout.Grid(6,4);
eJ.setColumnAlign(0,bt,bu);
eJ.setColumnAlign(1,bt,bu);
this.group2.setLayout(eJ);
this.row2=0;
this.add(this.group2);
this.addListener(b,function(){this.info("ReportPrintWindow BeforeClose");
},this);
this.sendBox=new qx.ui.groupbox.GroupBox(this.trc(br,bP),xbGetQxIcon(bh));
this.sendBox.setContentPadding(2);
this.sendBox.setLayout(new qx.ui.layout.HBox(3));
this.contentTypeSelectBox=new qx.ui.form.SelectBox();
var eL=new qx.ui.form.ListItem(J,xbGetIcon(bO),j);
this.contentTypeSelectBox.add(eL);
this.contentTypeSelectBox.setMaxWidth(160);
this.sendButton=new qx.ui.form.Button(this.trc(bm,N),xbGetQxIcon(M));
this.sendButton.addListener(bf,function(eO){var eQ=eO.getType();
var eP=!eO.isShiftPressed();
var eR=!eO.isCtrlPressed();
this.sendCreateReport(eP,eR);
},this);
this.sendBox.add(this.contentTypeSelectBox,{flex:1});
this.sendBox.add(this.sendButton);
this.add(this.sendBox);
this.warningLabel=new qx.ui.basic.Label(cm);
this.warningLabel.setRich(true);
this.warningLabel.setWrap(true);
this.add(this.warningLabel);
this.loadAllReportMetaInfo();
this.accountPropertiesChangedListenerFunc=this.trackGui.getEventManagerFromBuddyManager().addListener(co,function(eS){var eU=eS.getData().propertyCollection;
var eT=eS.getData().buddyTO;

if(this.trackGui.getMyLoginName()!=eT.getLoginName()){return;
}var eV=eU.getStartsWith(this.KEY_REPORT_METAINFO_PREFIX);

if(eV.length==0){return ;
}this.loadAllReportMetaInfo();
},this);
this.logoutPreListenerFunc=this.trackGui.getEventManager().addListener(bW,function(eW){this.destroyPopup();
},this);
this.info("track.poiprint.ReportPrintWindow.create() leave");
},responseOrExceptionOrTimeoutReceived_report:function(eX,eY,fa){var fh=eY;
this.info("PoiPrintWindo.js Received response: "+eX);
var fi=org.xmlBlaster.util.PropTO;
var fl=null;
var fg=(eX!=null)?eX.getPropValue(fi.KEY_RESULT_CSVFLAG):null;
var fm=(fg!=null&&fg.indexOf(z)!=-1);

if(fm){fa.requestResponseDispatcher.extendTimeout(fa.bounceId,fa.timeoutSec);
}
if(eX==null){fl=this.trc(C,bd,fa.timeoutSec);
this.writeToStatusLine(-1,fl);

if(!fm){this.trackGui.errorMsgBox(fl);
}}else if(eX.isException()){if(eX.getPropValue(fi.KEY_ERRORCODE)==t){fl=bD+this.trc(cq,K)+X;
}else{fl=this.trc(cq,cE,eX.getPropValue(fi.KEY_ERRORCODE),eX.getResult());
}this.writeToStatusLine(-1,fl);

if(!fm){this.trackGui.errorMsgBox(fl);
}}else{var fk=eX.getResult();
var fd=org.xmlBlaster.util.Hashtable.parseCSV(fk);
var fj=fd.get(bj,cm);
var fe=fd.get(bI,cm);
var fc=this.reportsAreProcessing.get(fa.bounceId,cm);

if(fm){fl=this.trc(cf,cy,fc,fj,fe);
}else{var ff=fd.get(be,fc);
var fn=fd.get(bx,fc);
fl=this.trc(cf,W,ff,fn);
}this.writeToStatusLine(org.xmlBlaster.util.LOGLEVEL_INFO,fl);

if(!fm){this.trackGui.infoMsgBox(fl);
}}
if(!fm&&this.reportsAreProcessing.contains(fa.bounceId)){var fc=this.reportsAreProcessing.remove(fa.bounceId);
var fk=this.reportsAreProcessing.remove(fc);
this.info("Removed reportsAreProcessing "+fk);
}},onTemplateChangeSelectionEvent:function(e){if(this.programmaticSetSelected){return false;
}var fo=e.getData();

if(fo.length==0)return;
this.info("Changed selection to "+fo);
var fp=e.getData()[0];
this.onTemplateChangeSelection(fp);
},onTemplateChangeSelection:function(fq){var fv=fq.getUserData(cj);
var fw=this._parsePoiTemplateDescription(fv);
var fu=fw.getKeys();
this.group2.exclude();
this.group2.removeAll();
this.row2=0;

for(var i=0;i<fu.length;i++){var fx=fu[i];

if(fx.indexOf(h)<0)continue;

if(this.group2.isExcluded())this.group2.show();
var fy=fw.get(fx);
var fz=this.trackGui.getMyLocaleId();
var fs=net.watchee.PoiAttribConfig.parseCSV(fy,fz);
this.group2.add(new qx.ui.basic.Label(fs.getLabel()),{row:this.row2,column:0});
var fr;

switch(fs.getType()){case net.watchee.PoiAttribConfig.STRING:fr=new qx.ui.form.TextField();
break;
case net.watchee.PoiAttribConfig.INT:fr=new qx.ui.form.Spinner();
break;
case net.watchee.PoiAttribConfig.FLOAT:fr=new qx.ui.form.Spinner();
break;
case net.watchee.PoiAttribConfig.BOOL:fr=new qx.ui.form.CheckBox();
break;
default:fr=new qx.ui.form.TextField();
break;
}
try{var ft=fs.getDefaultValue();

if((fs.type==net.watchee.PoiAttribConfig.INT||fs.type==net.watchee.PoiAttribConfig.FLOAT)){fr.setValue(org.xmlBlaster.util.toNumber(ft));
}else if(fs.type==net.watchee.PoiAttribConfig.BOOL){fr.setValue(org.xmlBlaster.util.toBooleanRelaxed(ft));
}else{fr.setValue(ft);
}}catch(fA){this.trackGui.errorMsgBoxDeveloper(by+fA);
}this.group2.add(fr,{row:this.row2++,column:1});
}},onReportMetaInfoNameSelectBoxChangeSelectionEvent:function(e){if(this.programmaticSetSelected){return false;
}var fB=e.getData();

if(fB.length==0)return;
this.info("Changed selection to "+fB);
var fC=e.getData()[0];
this.onReportMetaInfoNameSelectBoxChangeSelection(fC);
},onReportMetaInfoNameSelectBoxChangeSelection:function(fD){var fF=fD.getUserData(ce);
var fE=fD.getUserData(cj);
this.insertToGui(fF,fE);
this.delButton.setEnabled(cg!=fE);
this.reportTemplateSelectBox.setEnabled(cg==fE);
this.lastSelectedAccountPropertyKey=fF;
},insertToGui:function(fG,fH){var fM=org.xmlBlaster.util.Hashtable.parseCSVQuoted(fH);

if(fH==cg){fM.clear();
}this.currentAccountPropertyHashtable=fM;
var name=this.extractReportMetaInfoName(fG);

if(this.isNewSelectedReportMetaInfoName())name=cm;
this.metaInfoName.setValue(name);
var fL=fM.get(cu);
var fK=this.getGlobalPropertyKey(fL);
this.selectTemplate(fK);
this.headerText.setValue(fM.get(bT,this.trc(cv,cm)));
this.headerIcon.setValue(fM.get(bV,cm));
this.footerText.setValue(fM.get(bQ,this.trc(cv,cm)));
var fI=fM.get(cs,cm);
var fJ=org.xmlBlaster.util.Hashtable.parseCSV(fI,cl,cx);
this.emailTo.setValue(fJ.get(bX,cm));

if(this.emailTo.getValue()==cm){this.emailTo.setValue(this.trackGui.getMyAccountTO().getEmail());
}this.emailCC.setValue(fJ.get(cn,cm));
this.emailBCC.setValue(fM.get(bU,cm));
this.previousGuiCsv=this.extractFromGui();
},extractFromGui:function(){var fP=cm;
var fR=cm;
fR+=I;
fP=org.xmlBlaster.util.trim(this.headerText.getValue());

if(fP!=null&&fP.length>0){var fO=fP.indexOf(cl)!=-1;

if(fO)fR+=ck;
fR+=fP;

if(fO)fR+=ck;
}fP=org.xmlBlaster.util.trim(this.headerIcon.getValue());

if(fP!=null&&fP.length>0&&fP!=d){var fO=fP.indexOf(cl)!=-1;
fR+=cl;
fR+=bz;

if(fO)fR+=ck;
fR+=fP;

if(fO)fR+=ck;
}fP=org.xmlBlaster.util.trim(this.footerText.getValue());

if(fP!=null&&fP.length>0){var fO=fP.indexOf(cl)!=-1;
fR+=cl;
fR+=v;

if(fO)fR+=ck;
fR+=fP;

if(fO)fR+=ck;
}fR+=cl;
fR+=c;
fP=this.emailTo.getValue();

if(fP!=null){fP=org.xmlBlaster.util.trim(fP);
fR+=Q+org.xmlBlaster.util.replaceAllTokens(fP,cl,bp);
}fP=this.emailCC.getValue();

if(fP!=null&&fP.length>0){fP=org.xmlBlaster.util.trim(fP);
fR+=cl;
fR+=bE+org.xmlBlaster.util.replaceAllTokens(fP,cl,bp);
}fP=this.emailBCC.getValue();

if(fP!=null&&fP.length>0){fP=org.xmlBlaster.util.trim(fP);
fR+=cl;
fR+=E+org.xmlBlaster.util.replaceAllTokens(fP,cl,bp);
}fR+=ck;
fR+=cl;
fR+=bG;
fR+=this.getSelectedReportTemplateName();

if(this.currentAccountPropertyHashtable!=null){var fN=this.currentAccountPropertyHashtable.getKeys();

for(var i=0;i<fN.length;i++){var fQ=fN[i];

if(fQ==bT||fQ==bV||fQ==bQ||fQ==cs||fQ==cu){continue;
}var fP=this.currentAccountPropertyHashtable.get(fQ);
fR+=cl+fQ+L+fP;
}}return fR;
},destroyPopup:function(){if(this.logoutPreListenerFunc!=null){this.trackGui.getEventManager().removeListener(bW,this.logoutPreListenerFunc);
this.logoutPreListenerFunc=null;
}
if(this.accountPropertiesChangedListenerFunc!=null){if(this.trackGui!=null&&this.trackGui.watchee!=null)this.trackGui.getEventManagerFromBuddyManager().removeListener(co,this.accountPropertiesChangedListenerFunc);
this.accountPropertiesChangedListenerFunc=null;
}
if(this.trackGui!=null){this.trackGui.getMyRoot().remove(this);
this.trackGui=null;
}this.close();
}}});
})();
(function(){var b="Provide propertyCollection argument",a="track.poiprint.IPrintWindowModel";
qx.Interface.define(a,{members:{getTitle:function(){},fillFilterData:function(c){this.assertArgumentsCount(arguments,1,1,b);
},isPoiReport:function(){}},statics:{},events:{}});
})();
(function(){var e="en",d="",c="_",b="en,de",a="track.util.GuiUtils";
qx.Class.define(a,{extend:qx.core.Object,construct:function(){qx.core.Object.call(this);
},statics:{getCurrBrowserLanguageId:function(f){var f=f||null;

if(f==null){f=b;
}var h=qx.locale.Manager.getInstance().getLocale();

if(h==null||h==d)h=e;
var g=h.indexOf(c);

if(g!=-1){h=h.substring(0,g);
}
if(f!=null&&f.length>0){var i=f.indexOf(h);

if(i==-1)h=e;
}return h;
},getSelectedUserData:function(j,k,m){if(m===undefined)m=null;

if(j===undefined)return m;

if(k===undefined)return m;
var n=j.getSelection()[0];

if(n==null)return m;
return n.getUserData(k);
},findListItemByUserData:function(o,p,q){if(q===undefined)q=null;

if(o===undefined)return null;

if(p===undefined)return null;
var s=o.getChildren();

for(var i=0,l=s.length;i<l;i++){var t=s[i];
var r=t.getUserData(p);

if(r==null)continue;
if(q!=null&&q!=r){continue;
}return t;
}return null;
},findListItemByModel:function(u,v){if(v===undefined)v=null;

if(u===undefined)return null;
var x=u.getChildren();

for(var i=0,l=x.length;i<l;i++){var y=x[i];
var w=y.getModel();

if(w==null)continue;

if(v==w){return y;
}}return null;
},findListItemByLabel:function(z,A,B){var B=org.xmlBlaster.util.toBoolean(B,false);

if(A===undefined)A=null;

if(z===undefined)return null;
var C=z.getChildren();

for(var i=0,l=C.length;i<l;i++){var E=C[i];
var D=E.getLabel();

if(D==null)continue;

if(B){if(D.indexOf(A)==0){return E;
}}else{if(A==D){return E;
}}}return null;
},selectByUserData:function(F,G,H){var I=track.util.GuiUtils.findListItemByUserData(F,G,H);

if(I!=null)F.setSelection([I]);
return I;
},selectByModel:function(J,K){var L=track.util.GuiUtils.findListItemByModel(J,K);

if(L!=null)J.setSelection([L]);
return L;
},selectByLabel:function(M,N){var O=track.util.GuiUtils.findListItemByLabel(M,N);

if(O!=null)M.setSelection([O]);
return O;
},dummy:function(){}},members:{},destruct:function(){this._disposeFields();
this._disposeObjects();
}});
})();
(function(){var f="hovered",e="mouseover",d="mouseout",c="listitem",b="qx.ui.form.ListItem",a="qx.event.type.Event";
qx.Class.define(b,{extend:qx.ui.basic.Atom,implement:[qx.ui.form.IModel],include:[qx.ui.form.MModelProperty],construct:function(g,h,i){qx.ui.basic.Atom.call(this,g,h);

if(i!=null){this.setModel(i);
}this.addListener(e,this._onMouseOver,this);
this.addListener(d,this._onMouseOut,this);
},events:{"action":a},properties:{appearance:{refine:true,init:c}},members:{_forwardStates:{focused:true,hovered:true,selected:true,dragover:true},_onMouseOver:function(){this.addState(f);
},_onMouseOut:function(){this.removeState(f);
}},destruct:function(){this.removeListener(e,this._onMouseOver,this);
this.removeListener(d,this._onMouseOut,this);
}});
})();
(function(){var k="",j="complete",h="String",g="changeValid",f="qx.event.type.Event",d="value instanceof Function || qx.Class.isSubClassOf(value.constructor, qx.ui.form.validation.AsyncValidator)",c="qx.ui.form.validation.Manager",b="This field is required",a="qx.event.type.Data";
qx.Class.define(c,{extend:qx.core.Object,construct:function(){qx.core.Object.call(this);
this.__mK=[];
this.__mL={};
this.setRequiredFieldMessage(qx.locale.Manager.tr(b));
},events:{"changeValid":a,"complete":f},properties:{validator:{check:d,init:null,nullable:true},invalidMessage:{check:h,init:k},requiredFieldMessage:{check:h,init:k},context:{nullable:true}},members:{__mK:null,__mM:null,__mL:null,__mN:null,add:function(l,m,n){if(!this.__mS(l)){throw new Error("Added widget not supported.");
}if(this.__mT(l)){if(m!=null){throw new Error("Widgets supporting selection can only be validated "+"in the form validator");
}}var o={item:l,validator:m,valid:null,context:n};
this.__mK.push(o);
},remove:function(p){var q=this.__mK;

for(var i=0,r=q.length;i<r;i++){if(p===q[i].item){q.splice(i,1);
return p;
}}return null;
},getItems:function(){var s=[];

for(var i=0;i<this.__mK.length;i++){s.push(this.__mK[i].item);
}return s;
},validate:function(){var x=true;
this.__mN=true;
var u=[];
for(var i=0;i<this.__mK.length;i++){var v=this.__mK[i].item;
var y=this.__mK[i].validator;
u.push(v);
if(y==null){var t=this.__mO(v);
x=x&&t;
this.__mN=t&&this.__mN;
continue;
}var t=this.__mP(this.__mK[i],v.getValue());
x=t&&x;

if(t!=null){this.__mN=t&&this.__mN;
}}var w=this.__mQ(u);

if(qx.lang.Type.isBoolean(w)){this.__mN=w&&this.__mN;
}x=w&&x;
this.__mU(x);

if(qx.lang.Object.isEmpty(this.__mL)){this.fireEvent(j);
}return x;
},__mO:function(z){if(z.getRequired()){if(this.__mT(z)){var A=!!z.getSelection()[0];
}else{var A=!!z.getValue();
}z.setValid(A);
var C=z.getRequiredInvalidMessage();
var B=C?C:this.getRequiredFieldMessage();
z.setInvalidMessage(B);
return A;
}return true;
},__mP:function(D,E){var J=D.item;
var I=D.context;
var H=D.validator;
if(this.__mR(H)){this.__mL[J.toHashCode()]=null;
H.validate(J,J.getValue(),this,I);
return null;
}var G=null;

try{var G=H.call(I||this,E,J);

if(G===undefined){G=true;
}}catch(e){if(e instanceof qx.core.ValidationError){G=false;

if(e.message&&e.message!=qx.type.BaseError.DEFAULTMESSAGE){var F=e.message;
}else{var F=e.getComment();
}J.setInvalidMessage(F);
}else{throw e;
}}J.setValid(G);
D.valid=G;
return G;
},__mQ:function(K){var M=this.getValidator();
var N=this.getContext()||this;

if(M==null){return true;
}this.setInvalidMessage(k);

if(this.__mR(M)){this.__mL[this.toHashCode()]=null;
M.validateForm(K,this,N);
return null;
}
try{var O=M.call(N,K,this);

if(O===undefined){O=true;
}}catch(e){if(e instanceof qx.core.ValidationError){O=false;

if(e.message&&e.message!=qx.type.BaseError.DEFAULTMESSAGE){var L=e.message;
}else{var L=e.getComment();
}this.setInvalidMessage(L);
}else{throw e;
}}return O;
},__mR:function(P){var Q=false;

if(!qx.lang.Type.isFunction(P)){Q=qx.Class.isSubClassOf(P.constructor,qx.ui.form.validation.AsyncValidator);
}return Q;
},__mS:function(R){var S=R.constructor;
return qx.Class.hasInterface(S,qx.ui.form.IForm);
},__mT:function(T){var U=T.constructor;
return qx.Class.hasInterface(U,qx.ui.core.ISingleSelection);
},__mU:function(V){var W=this.__mM;
this.__mM=V;
if(W!=V){this.fireDataEvent(g,V,W);
}},getValid:function(){return this.__mM;
},isValid:function(){return this.getValid();
},getInvalidMessages:function(){var X=[];
for(var i=0;i<this.__mK.length;i++){var Y=this.__mK[i].item;

if(!Y.getValid()){X.push(Y.getInvalidMessage());
}}if(this.getInvalidMessage()!=k){X.push(this.getInvalidMessage());
}return X;
},reset:function(){for(var i=0;i<this.__mK.length;i++){var ba=this.__mK[i];
ba.item.setValid(true);
}this.__mM=null;
},setItemValid:function(bb,bc){this.__mL[bb.toHashCode()]=bc;
bb.setValid(bc);
this.__mV();
},setFormValid:function(bd){this.__mL[this.toHashCode()]=bd;
this.__mV();
},__mV:function(){var bf=this.__mN;
for(var bg in this.__mL){var be=this.__mL[bg];
bf=be&&bf;
if(be==null){return;
}}this.__mU(bf);
this.__mL={};
this.fireEvent(j);
}},destruct:function(){this.__mK=null;
}});
})();
(function(){var a="qx.ui.form.validation.AsyncValidator";
qx.Class.define(a,{extend:qx.core.Object,construct:function(b){qx.core.Object.call(this);
this.__mW=b;
},members:{__mW:null,__mX:null,__eJ:null,__mY:null,validate:function(c,d,e,f){this.__mY=false;
this.__mX=c;
this.__eJ=e;
this.__mW.call(f||this,this,d);
},validateForm:function(g,h,i){this.__mY=true;
this.__eJ=h;
this.__mW.call(i,g,this);
},setValid:function(j,k){if(this.__mY){if(k!==undefined){this.__eJ.setInvalidMessage(k);
}this.__eJ.setFormValid(j);
}else{if(k!==undefined){this.__mX.setInvalidMessage(k);
}this.__eJ.setItemValid(this.__mX,j);
}}},destruct:function(){this.__eJ=this.__mX=null;
}});
})();
(function(){var k="popup",j="list",i="popupOpen",h="",g="mousewheel",f="PageUp",d="blur",c="mousedown",b="one",a="Escape",x="_applyMaxListHeight",w="Function",v="visible",u="changeSelection",t="middle",s="changeVisibility",r="resize",q="qx.ui.form.AbstractSelectBox",p="keypress",o="PageDown",m="mouseup",n="abstract",l="Number";
qx.Class.define(q,{extend:qx.ui.core.Widget,include:[qx.ui.core.MRemoteChildrenHandling,qx.ui.form.MForm],implement:[qx.ui.form.IForm],type:n,construct:function(){qx.ui.core.Widget.call(this);
var z=new qx.ui.layout.HBox();
this._setLayout(z);
z.setAlignY(t);
this.addListener(p,this._onKeyPress);
this.addListener(d,this._onBlur,this);
var y=qx.core.Init.getApplication().getRoot();
y.addListener(g,this._onMousewheel,this,true);
this.addListener(r,this._onResize,this);
},properties:{focusable:{refine:true,init:true},width:{refine:true,init:120},maxListHeight:{check:l,apply:x,nullable:true,init:200},format:{check:w,init:function(A){return this._defaultFormat(A);
},nullable:true}},members:{_createChildControlImpl:function(B,C){var D;

switch(B){case j:D=new qx.ui.form.List().set({focusable:false,keepFocus:true,height:null,width:null,maxHeight:this.getMaxListHeight(),selectionMode:b,quickSelection:true});
D.addListener(u,this._onListChangeSelection,this);
D.addListener(c,this._onListMouseDown,this);
break;
case k:D=new qx.ui.popup.Popup(new qx.ui.layout.VBox);
D.setAutoHide(false);
D.setKeepActive(true);
D.addListener(m,this.close,this);
D.add(this.getChildControl(j));
D.addListener(s,this._onPopupChangeVisibility,this);
break;
}return D||qx.ui.core.Widget.prototype._createChildControlImpl.call(this,B);
},_applyMaxListHeight:function(E,F){this.getChildControl(j).setMaxHeight(E);
},getChildrenContainer:function(){return this.getChildControl(j);
},open:function(){var G=this.getChildControl(k);
G.placeToWidget(this,true);
G.show();
},close:function(){this.getChildControl(k).hide();
},toggle:function(){var H=this.getChildControl(k).isVisible();

if(H){this.close();
}else{this.open();
}},_defaultFormat:function(I){var J=I?I.getLabel():h;
var K=I?I.getRich():false;

if(K){J=J.replace(/<[^>]+?>/g,h);
J=qx.bom.String.unescape(J);
}return J;
},_onBlur:function(e){this.close();
},_onKeyPress:function(e){var L=e.getKeyIdentifier();
var M=this.getChildControl(k);
if(M.isHidden()&&(L==o||L==f)){e.stopPropagation();
}else if(!M.isHidden()&&L==a){this.close();
e.stop();
}else{this.getChildControl(j).handleKeyPress(e);
}},_onMousewheel:function(e){var O=e.getTarget();
var N=this.getChildControl(k,true);

if(N==null){return;
}
if(qx.ui.core.Widget.contains(N,O)){e.preventDefault();
}else{this.close();
}},_onResize:function(e){this.getChildControl(k).setMinWidth(e.getData().width);
},_onListChangeSelection:function(e){throw new Error("Abstract method: _onListChangeSelection()");
},_onListMouseDown:function(e){throw new Error("Abstract method: _onListMouseDown()");
},_onPopupChangeVisibility:function(e){e.getData()==v?this.addState(i):this.removeState(i);
}},destruct:function(){var P=qx.core.Init.getApplication().getRoot();

if(P){P.removeListener(g,this._onMousewheel,this,true);
}}});
})();
(function(){var o="one",n="single",m="selected",k="additive",j="multi",h="os.name",g="osx",f="under",d="PageUp",c="Left",O="lead",N="Down",M="Up",L="Boolean",K="PageDown",J="anchor",I="End",H="Home",G="Right",F="right",v="click",w="above",t="left",u="Escape",r="A",s="Space",p="_applyMode",q="interval",x="changeSelection",y="qx.event.type.Data",A="quick",z="key",C="__nc",B="abstract",E="drag",D="qx.ui.core.selection.Abstract";
qx.Class.define(D,{type:B,extend:qx.core.Object,construct:function(){qx.core.Object.call(this);
this.__eN={};
},events:{"changeSelection":y},properties:{mode:{check:[n,j,k,o],init:n,apply:p},drag:{check:L,init:false},quick:{check:L,init:false}},members:{__na:0,__nb:0,__nc:null,__nd:null,__ne:null,__nf:null,__ng:null,__nh:null,__ni:null,__nj:null,__nk:null,__nl:null,__nm:null,__nn:null,__no:null,__np:null,__nq:null,__eN:null,__nr:null,__ns:null,_userInteraction:false,__nt:null,getSelectionContext:function(){return this.__np;
},selectAll:function(){var P=this.getMode();

if(P==n||P==o){throw new Error("Can not select all items in selection mode: "+P);
}this._selectAllItems();
this._fireChange();
},selectItem:function(Q){this._setSelectedItem(Q);
var R=this.getMode();

if(R!==n&&R!==o){this._setLeadItem(Q);
this._setAnchorItem(Q);
}this._scrollItemIntoView(Q);
this._fireChange();
},addItem:function(S){var T=this.getMode();

if(T===n||T===o){this._setSelectedItem(S);
}else{if(this._getAnchorItem()==null){this._setAnchorItem(S);
}this._setLeadItem(S);
this._addToSelection(S);
}this._scrollItemIntoView(S);
this._fireChange();
},removeItem:function(U){this._removeFromSelection(U);

if(this.getMode()===o&&this.isSelectionEmpty()){var V=this._applyDefaultSelection();
if(V==U){return;
}}
if(this.getLeadItem()==U){this._setLeadItem(null);
}
if(this._getAnchorItem()==U){this._setAnchorItem(null);
}this._fireChange();
},selectItemRange:function(W,X){var Y=this.getMode();

if(Y==n||Y==o){throw new Error("Can not select multiple items in selection mode: "+Y);
}this._selectItemRange(W,X);
this._setAnchorItem(W);
this._setLeadItem(X);
this._scrollItemIntoView(X);
this._fireChange();
},clearSelection:function(){if(this.getMode()==o){var ba=this._applyDefaultSelection(true);

if(ba!=null){return;
}}this._clearSelection();
this._setLeadItem(null);
this._setAnchorItem(null);
this._fireChange();
},replaceSelection:function(bb){var bc=this.getMode();

if(bc==o||bc===n){if(bb.length>1){throw new Error("Could not select more than one items in mode: "+bc+"!");
}
if(bb.length==1){this.selectItem(bb[0]);
}else{this.clearSelection();
}return;
}else{this._replaceMultiSelection(bb);
}},getSelectedItem:function(){var bd=this.getMode();

if(bd===n||bd===o){var be=this._getSelectedItem();
return be!=undefined?be:null;
}throw new Error("The method getSelectedItem() is only supported in 'single' and 'one' selection mode!");
},getSelection:function(){return qx.lang.Object.getValues(this.__eN);
},getSortedSelection:function(){var bg=this.getSelectables();
var bf=qx.lang.Object.getValues(this.__eN);
bf.sort(function(a,b){return bg.indexOf(a)-bg.indexOf(b);
});
return bf;
},isItemSelected:function(bh){var bi=this._selectableToHashCode(bh);
return this.__eN[bi]!==undefined;
},isSelectionEmpty:function(){return qx.lang.Object.isEmpty(this.__eN);
},invertSelection:function(){var bk=this.getMode();

if(bk===n||bk===o){throw new Error("The method invertSelection() is only supported in 'multi' and 'additive' selection mode!");
}var bj=this.getSelectables();

for(var i=0;i<bj.length;i++){this._toggleInSelection(bj[i]);
}this._fireChange();
},_setLeadItem:function(bl){var bm=this.__nq;

if(bm!==null){this._styleSelectable(bm,O,false);
}
if(bl!==null){this._styleSelectable(bl,O,true);
}this.__nq=bl;
},getLeadItem:function(){return this.__nq!==null?this.__nq:null;
},_setAnchorItem:function(bn){var bo=this.__nr;

if(bo!=null){this._styleSelectable(bo,J,false);
}
if(bn!=null){this._styleSelectable(bn,J,true);
}this.__nr=bn;
},_getAnchorItem:function(){return this.__nr!==null?this.__nr:null;
},_isSelectable:function(bp){throw new Error("Abstract method call: _isSelectable()");
},_getSelectableFromMouseEvent:function(event){var bq=event.getTarget();
if(bq&&this._isSelectable(bq)){return bq;
}return null;
},_selectableToHashCode:function(br){throw new Error("Abstract method call: _selectableToHashCode()");
},_styleSelectable:function(bs,bt,bu){throw new Error("Abstract method call: _styleSelectable()");
},_capture:function(){throw new Error("Abstract method call: _capture()");
},_releaseCapture:function(){throw new Error("Abstract method call: _releaseCapture()");
},_getLocation:function(){throw new Error("Abstract method call: _getLocation()");
},_getDimension:function(){throw new Error("Abstract method call: _getDimension()");
},_getSelectableLocationX:function(bv){throw new Error("Abstract method call: _getSelectableLocationX()");
},_getSelectableLocationY:function(bw){throw new Error("Abstract method call: _getSelectableLocationY()");
},_getScroll:function(){throw new Error("Abstract method call: _getScroll()");
},_scrollBy:function(bx,by){throw new Error("Abstract method call: _scrollBy()");
},_scrollItemIntoView:function(bz){throw new Error("Abstract method call: _scrollItemIntoView()");
},getSelectables:function(bA){throw new Error("Abstract method call: getSelectables()");
},_getSelectableRange:function(bB,bC){throw new Error("Abstract method call: _getSelectableRange()");
},_getFirstSelectable:function(){throw new Error("Abstract method call: _getFirstSelectable()");
},_getLastSelectable:function(){throw new Error("Abstract method call: _getLastSelectable()");
},_getRelatedSelectable:function(bD,bE){throw new Error("Abstract method call: _getRelatedSelectable()");
},_getPage:function(bF,bG){throw new Error("Abstract method call: _getPage()");
},_applyMode:function(bH,bI){this._setLeadItem(null);
this._setAnchorItem(null);
this._clearSelection();
if(bH===o){this._applyDefaultSelection(true);
}this._fireChange();
},handleMouseOver:function(event){if(this.__nt!=null&&this.__nt!=this._getScroll().top){this.__nt=null;
return;
}this._userInteraction=true;

if(!this.getQuick()){this._userInteraction=false;
return;
}var bK=this.getMode();

if(bK!==o&&bK!==n){this._userInteraction=false;
return;
}var bJ=this._getSelectableFromMouseEvent(event);

if(bJ===null){this._userInteraction=false;
return;
}this._setSelectedItem(bJ);
this._fireChange(A);
this._userInteraction=false;
},handleMouseDown:function(event){this._userInteraction=true;
var bM=this._getSelectableFromMouseEvent(event);

if(bM===null){this._userInteraction=false;
return;
}var bO=event.isCtrlPressed()||(qx.core.Environment.get(h)==g&&event.isMetaPressed());
var bL=event.isShiftPressed();
if(this.isItemSelected(bM)&&!bL&&!bO&&!this.getDrag()){this.__ns=bM;
this._userInteraction=false;
return;
}else{this.__ns=null;
}this._scrollItemIntoView(bM);
switch(this.getMode()){case n:case o:this._setSelectedItem(bM);
break;
case k:this._setLeadItem(bM);
this._setAnchorItem(bM);
this._toggleInSelection(bM);
break;
case j:this._setLeadItem(bM);
if(bL){var bN=this._getAnchorItem();

if(bN===null){bN=this._getFirstSelectable();
this._setAnchorItem(bN);
}this._selectItemRange(bN,bM,bO);
}else if(bO){this._setAnchorItem(bM);
this._toggleInSelection(bM);
}else{this._setAnchorItem(bM);
this._setSelectedItem(bM);
}break;
}var bP=this.getMode();

if(this.getDrag()&&bP!==n&&bP!==o&&!bL&&!bO){this.__ng=this._getLocation();
this.__nd=this._getScroll();
this.__nh=event.getDocumentLeft()+this.__nd.left;
this.__ni=event.getDocumentTop()+this.__nd.top;
this.__nj=true;
this._capture();
}this._fireChange(v);
this._userInteraction=false;
},handleMouseUp:function(event){this._userInteraction=true;
var bT=event.isCtrlPressed()||(qx.core.Environment.get(h)==g&&event.isMetaPressed());
var bQ=event.isShiftPressed();

if(!bT&&!bQ&&this.__ns!=null){var bR=this._getSelectableFromMouseEvent(event);

if(bR===null||!this.isItemSelected(bR)){this._userInteraction=false;
return;
}var bS=this.getMode();

if(bS===k){this._removeFromSelection(bR);
}else{this._setSelectedItem(bR);

if(this.getMode()===j){this._setLeadItem(bR);
this._setAnchorItem(bR);
}}this._userInteraction=false;
}this._cleanup();
},handleLoseCapture:function(event){this._cleanup();
},handleMouseMove:function(event){if(!this.__nj){return;
}this.__nk=event.getDocumentLeft();
this.__nl=event.getDocumentTop();
this._userInteraction=true;
var bV=this.__nk+this.__nd.left;

if(bV>this.__nh){this.__nm=1;
}else if(bV<this.__nh){this.__nm=-1;
}else{this.__nm=0;
}var bU=this.__nl+this.__nd.top;

if(bU>this.__ni){this.__nn=1;
}else if(bU<this.__ni){this.__nn=-1;
}else{this.__nn=0;
}var location=this.__ng;

if(this.__nk<location.left){this.__na=this.__nk-location.left;
}else if(this.__nk>location.right){this.__na=this.__nk-location.right;
}else{this.__na=0;
}
if(this.__nl<location.top){this.__nb=this.__nl-location.top;
}else if(this.__nl>location.bottom){this.__nb=this.__nl-location.bottom;
}else{this.__nb=0;
}if(!this.__nc){this.__nc=new qx.event.Timer(100);
this.__nc.addListener(q,this._onInterval,this);
}this.__nc.start();
this._autoSelect();
event.stopPropagation();
this._userInteraction=false;
},handleAddItem:function(e){var bW=e.getData();

if(this.getMode()===o&&this.isSelectionEmpty()){this.addItem(bW);
}},handleRemoveItem:function(e){this.removeItem(e.getData());
},_cleanup:function(){if(!this.getDrag()&&this.__nj){return;
}if(this.__no){this._fireChange(v);
}delete this.__nj;
delete this.__ne;
delete this.__nf;
this._releaseCapture();
if(this.__nc){this.__nc.stop();
}},_onInterval:function(e){this._scrollBy(this.__na,this.__nb);
this.__nd=this._getScroll();
this._autoSelect();
},_autoSelect:function(){var cg=this._getDimension();
var bY=Math.max(0,Math.min(this.__nk-this.__ng.left,cg.width))+this.__nd.left;
var bX=Math.max(0,Math.min(this.__nl-this.__ng.top,cg.height))+this.__nd.top;
if(this.__ne===bY&&this.__nf===bX){return;
}this.__ne=bY;
this.__nf=bX;
var ci=this._getAnchorItem();
var cb=ci;
var ce=this.__nm;
var ch,ca;

while(ce!==0){ch=ce>0?this._getRelatedSelectable(cb,F):this._getRelatedSelectable(cb,t);
if(ch!==null){ca=this._getSelectableLocationX(ch);
if((ce>0&&ca.left<=bY)||(ce<0&&ca.right>=bY)){cb=ch;
continue;
}}break;
}var cf=this.__nn;
var cd,cc;

while(cf!==0){cd=cf>0?this._getRelatedSelectable(cb,f):this._getRelatedSelectable(cb,w);
if(cd!==null){cc=this._getSelectableLocationY(cd);
if((cf>0&&cc.top<=bX)||(cf<0&&cc.bottom>=bX)){cb=cd;
continue;
}}break;
}var cj=this.getMode();

if(cj===j){this._selectItemRange(ci,cb);
}else if(cj===k){if(this.isItemSelected(ci)){this._selectItemRange(ci,cb,true);
}else{this._deselectItemRange(ci,cb);
}this._setAnchorItem(cb);
}this._fireChange(E);
},__nu:{Home:1,Down:1,Right:1,PageDown:1,End:1,Up:1,Left:1,PageUp:1},handleKeyPress:function(event){this._userInteraction=true;
var cp,co;
var cr=event.getKeyIdentifier();
var cq=this.getMode();
var cl=event.isCtrlPressed()||(qx.core.Environment.get(h)==g&&event.isMetaPressed());
var cm=event.isShiftPressed();
var cn=false;

if(cr===r&&cl){if(cq!==n&&cq!==o){this._selectAllItems();
cn=true;
}}else if(cr===u){if(cq!==n&&cq!==o){this._clearSelection();
cn=true;
}}else if(cr===s){var ck=this.getLeadItem();

if(ck!=null&&!cm){if(cl||cq===k){this._toggleInSelection(ck);
}else{this._setSelectedItem(ck);
}cn=true;
}}else if(this.__nu[cr]){cn=true;

if(cq===n||cq==o){cp=this._getSelectedItem();
}else{cp=this.getLeadItem();
}
if(cp!==null){switch(cr){case H:co=this._getFirstSelectable();
break;
case I:co=this._getLastSelectable();
break;
case M:co=this._getRelatedSelectable(cp,w);
break;
case N:co=this._getRelatedSelectable(cp,f);
break;
case c:co=this._getRelatedSelectable(cp,t);
break;
case G:co=this._getRelatedSelectable(cp,F);
break;
case d:co=this._getPage(cp,true);
break;
case K:co=this._getPage(cp,false);
break;
}}else{switch(cr){case H:case N:case G:case K:co=this._getFirstSelectable();
break;
case I:case M:case c:case d:co=this._getLastSelectable();
break;
}}if(co!==null){switch(cq){case n:case o:this._setSelectedItem(co);
break;
case k:this._setLeadItem(co);
break;
case j:if(cm){var cs=this._getAnchorItem();

if(cs===null){this._setAnchorItem(cs=this._getFirstSelectable());
}this._setLeadItem(co);
this._selectItemRange(cs,co,cl);
}else{this._setAnchorItem(co);
this._setLeadItem(co);

if(!cl){this._setSelectedItem(co);
}}break;
}this.__nt=this._getScroll().top;
this._scrollItemIntoView(co);
}}
if(cn){event.stop();
this._fireChange(z);
}this._userInteraction=false;
},_selectAllItems:function(){var ct=this.getSelectables();

for(var i=0,l=ct.length;i<l;i++){this._addToSelection(ct[i]);
}},_clearSelection:function(){var cu=this.__eN;

for(var cv in cu){this._removeFromSelection(cu[cv]);
}this.__eN={};
},_selectItemRange:function(cw,cx,cy){var cB=this._getSelectableRange(cw,cx);
if(!cy){var cA=this.__eN;
var cC=this.__nv(cB);

for(var cz in cA){if(!cC[cz]){this._removeFromSelection(cA[cz]);
}}}for(var i=0,l=cB.length;i<l;i++){this._addToSelection(cB[i]);
}},_deselectItemRange:function(cD,cE){var cF=this._getSelectableRange(cD,cE);

for(var i=0,l=cF.length;i<l;i++){this._removeFromSelection(cF[i]);
}},__nv:function(cG){var cI={};
var cH;

for(var i=0,l=cG.length;i<l;i++){cH=cG[i];
cI[this._selectableToHashCode(cH)]=cH;
}return cI;
},_getSelectedItem:function(){for(var cJ in this.__eN){return this.__eN[cJ];
}return null;
},_setSelectedItem:function(cK){if(this._isSelectable(cK)){var cL=this.__eN;
var cM=this._selectableToHashCode(cK);

if(!cL[cM]||qx.lang.Object.hasMinLength(cL,2)){this._clearSelection();
this._addToSelection(cK);
}}},_addToSelection:function(cN){var cO=this._selectableToHashCode(cN);

if(this.__eN[cO]==null&&this._isSelectable(cN)){this.__eN[cO]=cN;
this._styleSelectable(cN,m,true);
this.__no=true;
}},_toggleInSelection:function(cP){var cQ=this._selectableToHashCode(cP);

if(this.__eN[cQ]==null){this.__eN[cQ]=cP;
this._styleSelectable(cP,m,true);
}else{delete this.__eN[cQ];
this._styleSelectable(cP,m,false);
}this.__no=true;
},_removeFromSelection:function(cR){var cS=this._selectableToHashCode(cR);

if(this.__eN[cS]!=null){delete this.__eN[cS];
this._styleSelectable(cR,m,false);
this.__no=true;
}},_replaceMultiSelection:function(cT){var cW=false;
var da,cY;
var cU={};

for(var i=0,l=cT.length;i<l;i++){da=cT[i];

if(this._isSelectable(da)){cY=this._selectableToHashCode(da);
cU[cY]=da;
}}var db=cT[0];
var cV=da;
var cX=this.__eN;

for(var cY in cX){if(cU[cY]){delete cU[cY];
}else{da=cX[cY];
delete cX[cY];
this._styleSelectable(da,m,false);
cW=true;
}}for(var cY in cU){da=cX[cY]=cU[cY];
this._styleSelectable(da,m,true);
cW=true;
}if(!cW){return false;
}this._scrollItemIntoView(cV);
this._setLeadItem(db);
this._setAnchorItem(db);
this.__no=true;
this._fireChange();
},_fireChange:function(dc){if(this.__no){this.__np=dc||null;
this.fireDataEvent(x,this.getSelection());
delete this.__no;
}},_applyDefaultSelection:function(dd){if(dd===true||this.getMode()===o&&this.isSelectionEmpty()){var de=this._getFirstSelectable();

if(de!=null){this.selectItem(de);
}return de;
}return null;
}},destruct:function(){this._disposeObjects(C);
this.__eN=this.__ns=this.__nr=null;
this.__nq=null;
}});
})();
(function(){var f="vertical",e="under",d="above",c="qx.ui.core.selection.Widget",b="left",a="right";
qx.Class.define(c,{extend:qx.ui.core.selection.Abstract,construct:function(g){qx.ui.core.selection.Abstract.call(this);
this.__jG=g;
},members:{__jG:null,_isSelectable:function(h){return this._isItemSelectable(h)&&h.getLayoutParent()===this.__jG;
},_selectableToHashCode:function(j){return j.$$hash;
},_styleSelectable:function(k,m,n){n?k.addState(m):k.removeState(m);
},_capture:function(){this.__jG.capture();
},_releaseCapture:function(){this.__jG.releaseCapture();
},_isItemSelectable:function(o){if(this._userInteraction){return o.isVisible()&&o.isEnabled();
}else{return o.isVisible();
}},_getWidget:function(){return this.__jG;
},_getLocation:function(){var p=this.__jG.getContentElement().getDomElement();
return p?qx.bom.element.Location.get(p):null;
},_getDimension:function(){return this.__jG.getInnerSize();
},_getSelectableLocationX:function(q){var r=q.getBounds();

if(r){return {left:r.left,right:r.left+r.width};
}},_getSelectableLocationY:function(s){var t=s.getBounds();

if(t){return {top:t.top,bottom:t.top+t.height};
}},_getScroll:function(){return {left:0,top:0};
},_scrollBy:function(u,v){},_scrollItemIntoView:function(w){this.__jG.scrollChildIntoView(w);
},getSelectables:function(x){var y=false;

if(!x){y=this._userInteraction;
this._userInteraction=true;
}var B=this.__jG.getChildren();
var z=[];
var A;

for(var i=0,l=B.length;i<l;i++){A=B[i];

if(this._isItemSelectable(A)){z.push(A);
}}this._userInteraction=y;
return z;
},_getSelectableRange:function(C,D){if(C===D){return [C];
}var H=this.__jG.getChildren();
var E=[];
var G=false;
var F;

for(var i=0,l=H.length;i<l;i++){F=H[i];

if(F===C||F===D){if(G){E.push(F);
break;
}else{G=true;
}}
if(G&&this._isItemSelectable(F)){E.push(F);
}}return E;
},_getFirstSelectable:function(){var I=this.__jG.getChildren();

for(var i=0,l=I.length;i<l;i++){if(this._isItemSelectable(I[i])){return I[i];
}}return null;
},_getLastSelectable:function(){var J=this.__jG.getChildren();

for(var i=J.length-1;i>0;i--){if(this._isItemSelectable(J[i])){return J[i];
}}return null;
},_getRelatedSelectable:function(K,L){var O=this.__jG.getOrientation()===f;
var N=this.__jG.getChildren();
var M=N.indexOf(K);
var P;

if((O&&L===d)||(!O&&L===b)){for(var i=M-1;i>=0;i--){P=N[i];

if(this._isItemSelectable(P)){return P;
}}}else if((O&&L===e)||(!O&&L===a)){for(var i=M+1;i<N.length;i++){P=N[i];

if(this._isItemSelectable(P)){return P;
}}}return null;
},_getPage:function(Q,R){if(R){return this._getFirstSelectable();
}else{return this._getLastSelectable();
}}},destruct:function(){this.__jG=null;
}});
})();
(function(){var a="qx.ui.core.selection.ScrollArea";
qx.Class.define(a,{extend:qx.ui.core.selection.Widget,members:{_isSelectable:function(b){return this._isItemSelectable(b)&&b.getLayoutParent()===this._getWidget().getChildrenContainer();
},_getDimension:function(){return this._getWidget().getPaneSize();
},_getScroll:function(){var c=this._getWidget();
return {left:c.getScrollX(),top:c.getScrollY()};
},_scrollBy:function(d,e){var f=this._getWidget();
f.scrollByX(d);
f.scrollByY(e);
},_getPage:function(g,h){var m=this.getSelectables();
var length=m.length;
var p=m.indexOf(g);
if(p===-1){throw new Error("Invalid lead item: "+g);
}var j=this._getWidget();
var r=j.getScrollY();
var innerHeight=j.getInnerSize().height;
var top,l,q;

if(h){var o=r;
var i=p;
while(1){for(;i>=0;i--){top=j.getItemTop(m[i]);
if(top<o){q=i+1;
break;
}}if(q==null){var s=this._getFirstSelectable();
return s==g?null:s;
}if(q>=p){o-=innerHeight+r-j.getItemBottom(g);
q=null;
continue;
}return m[q];
}}else{var n=innerHeight+r;
var i=p;
while(1){for(;i<length;i++){l=j.getItemBottom(m[i]);
if(l>n){q=i-1;
break;
}}if(q==null){var k=this._getLastSelectable();
return k==g?null:k;
}if(q<=p){n+=j.getItemTop(g)-r;
q=null;
continue;
}return m[q];
}}}}});
})();
(function(){var v="single",u="Boolean",t="one",s="changeSelection",r="mouseup",q="mousedown",p="__eJ",o="losecapture",n="multi",m="_applyQuickSelection",d="mouseover",l="_applySelectionMode",h="_applyDragSelection",c="qx.ui.core.MMultiSelectionHandling",b="removeItem",g="keypress",f="qx.event.type.Data",j="addItem",a="additive",k="mousemove";
qx.Mixin.define(c,{construct:function(){var x=this.SELECTION_MANAGER;
var w=this.__eJ=new x(this);
this.addListener(q,w.handleMouseDown,w);
this.addListener(r,w.handleMouseUp,w);
this.addListener(d,w.handleMouseOver,w);
this.addListener(k,w.handleMouseMove,w);
this.addListener(o,w.handleLoseCapture,w);
this.addListener(g,w.handleKeyPress,w);
this.addListener(j,w.handleAddItem,w);
this.addListener(b,w.handleRemoveItem,w);
w.addListener(s,this._onSelectionChange,this);
},events:{"changeSelection":f},properties:{selectionMode:{check:[v,n,a,t],init:v,apply:l},dragSelection:{check:u,init:false,apply:h},quickSelection:{check:u,init:false,apply:m}},members:{__eJ:null,selectAll:function(){this.__eJ.selectAll();
},isSelected:function(y){if(!qx.ui.core.Widget.contains(this,y)){throw new Error("Could not test if "+y+" is selected, because it is not a child element!");
}return this.__eJ.isItemSelected(y);
},addToSelection:function(z){if(!qx.ui.core.Widget.contains(this,z)){throw new Error("Could not add + "+z+" to selection, because it is not a child element!");
}this.__eJ.addItem(z);
},removeFromSelection:function(A){if(!qx.ui.core.Widget.contains(this,A)){throw new Error("Could not remove "+A+" from selection, because it is not a child element!");
}this.__eJ.removeItem(A);
},selectRange:function(B,C){this.__eJ.selectItemRange(B,C);
},resetSelection:function(){this.__eJ.clearSelection();
},setSelection:function(D){for(var i=0;i<D.length;i++){if(!qx.ui.core.Widget.contains(this,D[i])){throw new Error("Could not select "+D[i]+", because it is not a child element!");
}}
if(D.length===0){this.resetSelection();
}else{var E=this.getSelection();

if(!qx.lang.Array.equals(E,D)){this.__eJ.replaceSelection(D);
}}},getSelection:function(){return this.__eJ.getSelection();
},getSortedSelection:function(){return this.__eJ.getSortedSelection();
},isSelectionEmpty:function(){return this.__eJ.isSelectionEmpty();
},getSelectionContext:function(){return this.__eJ.getSelectionContext();
},_getManager:function(){return this.__eJ;
},getSelectables:function(F){return this.__eJ.getSelectables(F);
},invertSelection:function(){this.__eJ.invertSelection();
},_getLeadItem:function(){var G=this.__eJ.getMode();

if(G===v||G===t){return this.__eJ.getSelectedItem();
}else{return this.__eJ.getLeadItem();
}},_applySelectionMode:function(H,I){this.__eJ.setMode(H);
},_applyDragSelection:function(J,K){this.__eJ.setDrag(J);
},_applyQuickSelection:function(L,M){this.__eJ.setQuick(L);
},_onSelectionChange:function(e){this.fireDataEvent(s,e.getData());
}},destruct:function(){this._disposeObjects(p);
}});
})();
(function(){var a="qx.ui.core.IMultiSelection";
qx.Interface.define(a,{extend:qx.ui.core.ISingleSelection,members:{selectAll:function(){return true;
},addToSelection:function(b){return arguments.length==1;
},removeFromSelection:function(c){return arguments.length==1;
}}});
})();
(function(){var f="scrollbar-x",d="scrollbar-y",c="qx.ui.core.scroll.MWheelHandling",b="x",a="y";
qx.Mixin.define(c,{members:{_onMouseWheel:function(e){var l=this._isChildControlVisible(f);
var m=this._isChildControlVisible(d);
var q=m?this.getChildControl(d,true):null;
var p=l?this.getChildControl(f,true):null;
var j=e.getWheelDelta(a);
var i=e.getWheelDelta(b);
var k=!m;
var n=!l;
if(q){var o=parseInt(j);

if(o!==0){q.scrollBySteps(o);
}var h=q.getPosition();
var g=q.getMaximum();
if(o<0&&h<=0||o>0&&h>=g){k=true;
}}if(p){var o=parseInt(i);

if(o!==0){p.scrollBySteps(o);
}var h=p.getPosition();
var g=p.getMaximum();
if(o<0&&h<=0||o>0&&h>=g){n=true;
}}if(!k||!n){e.stop();
}}}});
})();
(function(){var b="qx.nativeScrollBars",a="qx.ui.core.scroll.MScrollBarFactory";
qx.core.Environment.add(b,false);
qx.Mixin.define(a,{members:{_createScrollBar:function(c){if(qx.core.Environment.get(b)){return new qx.ui.core.scroll.NativeScrollBar(c);
}else{return new qx.ui.core.scroll.ScrollBar(c);
}}}});
})();
(function(){var b="qx.ui.core.scroll.IScrollBar",a="qx.event.type.Data";
qx.Interface.define(b,{events:{"scroll":a},properties:{orientation:{},maximum:{},position:{},knobFactor:{}},members:{scrollTo:function(c){this.assertNumber(c);
},scrollBy:function(d){this.assertNumber(d);
},scrollBySteps:function(e){this.assertNumber(e);
}}});
})();
(function(){var k="horizontal",j="px",i="scroll",h="vertical",g="-1px",f="0",d="engine.name",c="hidden",b="mousedown",a="qx.ui.core.scroll.NativeScrollBar",z="PositiveNumber",y="Integer",x="__nx",w="mousemove",v="_applyMaximum",u="_applyOrientation",t="appear",s="opera",r="PositiveInteger",q="mshtml",o="mouseup",p="Number",m="_applyPosition",n="scrollbar",l="native";
qx.Class.define(a,{extend:qx.ui.core.Widget,implement:qx.ui.core.scroll.IScrollBar,construct:function(A){qx.ui.core.Widget.call(this);
this.addState(l);
this.getContentElement().addListener(i,this._onScroll,this);
this.addListener(b,this._stopPropagation,this);
this.addListener(o,this._stopPropagation,this);
this.addListener(w,this._stopPropagation,this);

if((qx.core.Environment.get(d)==s)){this.addListener(t,this._onAppear,this);
}this.getContentElement().add(this._getScrollPaneElement());
if(A!=null){this.setOrientation(A);
}else{this.initOrientation();
}},properties:{appearance:{refine:true,init:n},orientation:{check:[k,h],init:k,apply:u},maximum:{check:r,apply:v,init:100},position:{check:p,init:0,apply:m,event:i},singleStep:{check:y,init:20},knobFactor:{check:z,nullable:true}},members:{__nw:null,__nx:null,_getScrollPaneElement:function(){if(!this.__nx){this.__nx=new qx.html.Element();
}return this.__nx;
},renderLayout:function(B,top,C,D){var E=qx.ui.core.Widget.prototype.renderLayout.call(this,B,top,C,D);
this._updateScrollBar();
return E;
},_getContentHint:function(){var F=qx.bom.element.Overflow.getScrollbarWidth();
return {width:this.__nw?100:F,maxWidth:this.__nw?null:F,minWidth:this.__nw?null:F,height:this.__nw?F:100,maxHeight:this.__nw?F:null,minHeight:this.__nw?F:null};
},_applyEnabled:function(G,H){qx.ui.core.Widget.prototype._applyEnabled.call(this,G,H);
this._updateScrollBar();
},_applyMaximum:function(I){this._updateScrollBar();
},_applyPosition:function(J){var content=this.getContentElement();

if(this.__nw){content.scrollToX(J);
}else{content.scrollToY(J);
}},_applyOrientation:function(K,L){var M=this.__nw=K===k;
this.set({allowGrowX:M,allowShrinkX:M,allowGrowY:!M,allowShrinkY:!M});

if(M){this.replaceState(h,k);
}else{this.replaceState(k,h);
}this.getContentElement().setStyles({overflowX:M?i:c,overflowY:M?c:i});
qx.ui.core.queue.Layout.add(this);
},_updateScrollBar:function(){var O=this.__nw;
var P=this.getBounds();

if(!P){return;
}
if(this.isEnabled()){var Q=O?P.width:P.height;
var N=this.getMaximum()+Q;
}else{N=0;
}if((qx.core.Environment.get(d)==q)){var P=this.getBounds();
this.getContentElement().setStyles({left:O?f:g,top:O?g:f,width:(O?P.width:P.width+1)+j,height:(O?P.height+1:P.height)+j});
}this._getScrollPaneElement().setStyles({left:0,top:0,width:(O?N:1)+j,height:(O?1:N)+j});
this.scrollTo(this.getPosition());
},scrollTo:function(R){this.setPosition(Math.max(0,Math.min(this.getMaximum(),R)));
},scrollBy:function(S){this.scrollTo(this.getPosition()+S);
},scrollBySteps:function(T){var U=this.getSingleStep();
this.scrollBy(T*U);
},_onScroll:function(e){var W=this.getContentElement();
var V=this.__nw?W.getScrollX():W.getScrollY();
this.setPosition(V);
},_onAppear:function(e){this.scrollTo(this.getPosition());
},_stopPropagation:function(e){e.stopPropagation();
}},destruct:function(){this._disposeObjects(x);
}});
})();
(function(){var k="slider",j="horizontal",i="button-begin",h="vertical",g="button-end",f="Integer",d="execute",c="right",b="left",a="down",z="up",y="PositiveNumber",x="changeValue",w="qx.lang.Type.isNumber(value)&&value>=0&&value<=this.getMaximum()",v="_applyKnobFactor",u="knob",t="qx.ui.core.scroll.ScrollBar",s="resize",r="_applyOrientation",q="_applyPageStep",o="PositiveInteger",p="scroll",m="_applyPosition",n="scrollbar",l="_applyMaximum";
qx.Class.define(t,{extend:qx.ui.core.Widget,implement:qx.ui.core.scroll.IScrollBar,construct:function(A){qx.ui.core.Widget.call(this);
this._createChildControl(i);
this._createChildControl(k).addListener(s,this._onResizeSlider,this);
this._createChildControl(g);
if(A!=null){this.setOrientation(A);
}else{this.initOrientation();
}},properties:{appearance:{refine:true,init:n},orientation:{check:[j,h],init:j,apply:r},maximum:{check:o,apply:l,init:100},position:{check:w,init:0,apply:m,event:p},singleStep:{check:f,init:20},pageStep:{check:f,init:10,apply:q},knobFactor:{check:y,apply:v,nullable:true}},members:{__ny:2,_createChildControlImpl:function(B,C){var D;

switch(B){case k:D=new qx.ui.core.scroll.ScrollSlider();
D.setPageStep(100);
D.setFocusable(false);
D.addListener(x,this._onChangeSliderValue,this);
this._add(D,{flex:1});
break;
case i:D=new qx.ui.form.RepeatButton();
D.setFocusable(false);
D.addListener(d,this._onExecuteBegin,this);
this._add(D);
break;
case g:D=new qx.ui.form.RepeatButton();
D.setFocusable(false);
D.addListener(d,this._onExecuteEnd,this);
this._add(D);
break;
}return D||qx.ui.core.Widget.prototype._createChildControlImpl.call(this,B);
},_applyMaximum:function(E){this.getChildControl(k).setMaximum(E);
},_applyPosition:function(F){this.getChildControl(k).setValue(F);
},_applyKnobFactor:function(G){this.getChildControl(k).setKnobFactor(G);
},_applyPageStep:function(H){this.getChildControl(k).setPageStep(H);
},_applyOrientation:function(I,J){var K=this._getLayout();

if(K){K.dispose();
}if(I===j){this._setLayout(new qx.ui.layout.HBox());
this.setAllowStretchX(true);
this.setAllowStretchY(false);
this.replaceState(h,j);
this.getChildControl(i).replaceState(z,b);
this.getChildControl(g).replaceState(a,c);
}else{this._setLayout(new qx.ui.layout.VBox());
this.setAllowStretchX(false);
this.setAllowStretchY(true);
this.replaceState(j,h);
this.getChildControl(i).replaceState(b,z);
this.getChildControl(g).replaceState(c,a);
}this.getChildControl(k).setOrientation(I);
},scrollTo:function(L){this.getChildControl(k).slideTo(L);
},scrollBy:function(M){this.getChildControl(k).slideBy(M);
},scrollBySteps:function(N){var O=this.getSingleStep();
this.getChildControl(k).slideBy(N*O);
},_onExecuteBegin:function(e){this.scrollBy(-this.getSingleStep());
},_onExecuteEnd:function(e){this.scrollBy(this.getSingleStep());
},_onChangeSliderValue:function(e){this.setPosition(e.getData());
},_onResizeSlider:function(e){var P=this.getChildControl(k).getChildControl(u);
var S=P.getSizeHint();
var Q=false;
var R=this.getChildControl(k).getInnerSize();

if(this.getOrientation()==h){if(R.height<S.minHeight+this.__ny){Q=true;
}}else{if(R.width<S.minWidth+this.__ny){Q=true;
}}
if(Q){P.exclude();
}else{P.show();
}}}});
})();
(function(){var a="qx.ui.form.IRange";
qx.Interface.define(a,{members:{setMinimum:function(b){return arguments.length==1;
},getMinimum:function(){},setMaximum:function(c){return arguments.length==1;
},getMaximum:function(){},setSingleStep:function(d){return arguments.length==1;
},getSingleStep:function(){},setPageStep:function(e){return arguments.length==1;
},getPageStep:function(){}}});
})();
(function(){var b="qx.ui.form.INumberForm",a="qx.event.type.Data";
qx.Interface.define(b,{events:{"changeValue":a},members:{setValue:function(c){return arguments.length==1;
},resetValue:function(){},getValue:function(){}}});
})();
(function(){var k="knob",j="horizontal",i="vertical",h="Integer",g="hovered",f="left",d="top",c="mouseup",b="pressed",a="px",X="changeValue",W="interval",V="mousemove",U="resize",T="slider",S="mousedown",R="PageUp",Q="mouseout",P="x",O='qx.event.type.Data',r="Left",s="Down",p="Up",q="dblclick",n="qx.ui.form.Slider",o="PageDown",l="mousewheel",m="_applyValue",u="_applyKnobFactor",v="End",C="height",A="y",G="Right",E="width",K="_applyOrientation",I="Home",x="mouseover",N="floor",M="_applyMinimum",L="click",w="typeof value==='number'&&value>=this.getMinimum()&&value<=this.getMaximum()",y="keypress",z="ceil",B="losecapture",D="contextmenu",F="_applyMaximum",H="Number",J="changeMaximum",t="changeMinimum";
qx.Class.define(n,{extend:qx.ui.core.Widget,implement:[qx.ui.form.IForm,qx.ui.form.INumberForm,qx.ui.form.IRange],include:[qx.ui.form.MForm],construct:function(Y){qx.ui.core.Widget.call(this);
this._setLayout(new qx.ui.layout.Canvas());
this.addListener(y,this._onKeyPress);
this.addListener(l,this._onMouseWheel);
this.addListener(S,this._onMouseDown);
this.addListener(c,this._onMouseUp);
this.addListener(B,this._onMouseUp);
this.addListener(U,this._onUpdate);
this.addListener(D,this._onStopEvent);
this.addListener(L,this._onStopEvent);
this.addListener(q,this._onStopEvent);
if(Y!=null){this.setOrientation(Y);
}else{this.initOrientation();
}},events:{changeValue:O},properties:{appearance:{refine:true,init:T},focusable:{refine:true,init:true},orientation:{check:[j,i],init:j,apply:K},value:{check:w,init:0,apply:m,nullable:true},minimum:{check:h,init:0,apply:M,event:t},maximum:{check:h,init:100,apply:F,event:J},singleStep:{check:h,init:1},pageStep:{check:h,init:10},knobFactor:{check:H,apply:u,nullable:true}},members:{__nz:null,__nA:null,__nB:null,__nC:null,__nD:null,__nE:null,__nF:null,__nG:null,__jg:null,__nH:null,__nI:null,__nJ:null,_forwardStates:{invalid:true},_createChildControlImpl:function(ba,bb){var bc;

switch(ba){case k:bc=new qx.ui.core.Widget();
bc.addListener(U,this._onUpdate,this);
bc.addListener(x,this._onMouseOver);
bc.addListener(Q,this._onMouseOut);
this._add(bc);
break;
}return bc||qx.ui.core.Widget.prototype._createChildControlImpl.call(this,ba);
},_onMouseOver:function(e){this.addState(g);
},_onMouseOut:function(e){this.removeState(g);
},_onMouseWheel:function(e){var bf=this.getOrientation()===j?P:A;
var be=e.getWheelDelta(bf);
var bd=be>0?1:be<0?-1:0;
this.slideBy(bd*this.getSingleStep());
e.stop();
},_onKeyPress:function(e){var bh=this.getOrientation()===j;
var bg=bh?r:p;
var forward=bh?G:s;

switch(e.getKeyIdentifier()){case forward:this.slideForward();
break;
case bg:this.slideBack();
break;
case o:this.slidePageForward();
break;
case R:this.slidePageBack();
break;
case I:this.slideToBegin();
break;
case v:this.slideToEnd();
break;
default:return;
}e.stop();
},_onMouseDown:function(e){if(this.__nC){return;
}var bk=this.__nw;
var bi=this.getChildControl(k);
var bj=bk?f:d;
var bm=bk?e.getDocumentLeft():e.getDocumentTop();
var bn=this.__nz=qx.bom.element.Location.get(this.getContentElement().getDomElement())[bj];
var bl=this.__nA=qx.bom.element.Location.get(bi.getContainerElement().getDomElement())[bj];

if(e.getTarget()===bi){this.__nC=true;

if(!this.__nH){this.__nH=new qx.event.Timer(100);
this.__nH.addListener(W,this._fireValue,this);
}this.__nH.start();
this.__nD=bm+bn-bl;
bi.addState(b);
}else{this.__nE=true;
this.__nF=bm<=bl?-1:1;
this.__nL(e);
this._onInterval();
if(!this.__jg){this.__jg=new qx.event.Timer(100);
this.__jg.addListener(W,this._onInterval,this);
}this.__jg.start();
}this.addListener(V,this._onMouseMove);
this.capture();
e.stopPropagation();
},_onMouseUp:function(e){if(this.__nC){this.releaseCapture();
delete this.__nC;
this.__nH.stop();
this._fireValue();
delete this.__nD;
this.getChildControl(k).removeState(b);
if(e.getType()===c){var bp;
var bq;
var bo;

if(this.__nw){bp=e.getDocumentLeft()-(this._valueToPosition(this.getValue())+this.__nz);
bo=qx.bom.element.Location.get(this.getContentElement().getDomElement())[d];
bq=e.getDocumentTop()-(bo+this.getChildControl(k).getBounds().top);
}else{bp=e.getDocumentTop()-(this._valueToPosition(this.getValue())+this.__nz);
bo=qx.bom.element.Location.get(this.getContentElement().getDomElement())[f];
bq=e.getDocumentLeft()-(bo+this.getChildControl(k).getBounds().left);
}
if(bq<0||bq>this.__nB||bp<0||bp>this.__nB){this.getChildControl(k).removeState(g);
}}}else if(this.__nE){this.__jg.stop();
this.releaseCapture();
delete this.__nE;
delete this.__nF;
delete this.__nG;
}this.removeListener(V,this._onMouseMove);
if(e.getType()===c){e.stopPropagation();
}},_onMouseMove:function(e){if(this.__nC){var bs=this.__nw?e.getDocumentLeft():e.getDocumentTop();
var br=bs-this.__nD;
this.slideTo(this._positionToValue(br));
}else if(this.__nE){this.__nL(e);
}e.stopPropagation();
},_onInterval:function(e){var bt=this.getValue()+(this.__nF*this.getPageStep());
if(bt<this.getMinimum()){bt=this.getMinimum();
}else if(bt>this.getMaximum()){bt=this.getMaximum();
}var bu=this.__nF==-1;

if((bu&&bt<=this.__nG)||(!bu&&bt>=this.__nG)){bt=this.__nG;
}this.slideTo(bt);
},_onUpdate:function(e){var bw=this.getInnerSize();
var bx=this.getChildControl(k).getBounds();
var bv=this.__nw?E:C;
this._updateKnobSize();
this.__nK=bw[bv]-bx[bv];
this.__nB=bx[bv];
this._updateKnobPosition();
},__nw:false,__nK:0,__nL:function(e){var by=this.__nw;
var bF=by?e.getDocumentLeft():e.getDocumentTop();
var bH=this.__nz;
var bz=this.__nA;
var bJ=this.__nB;
var bG=bF-bH;

if(bF>=bz){bG-=bJ;
}var bD=this._positionToValue(bG);
var bA=this.getMinimum();
var bB=this.getMaximum();

if(bD<bA){bD=bA;
}else if(bD>bB){bD=bB;
}else{var bE=this.getValue();
var bC=this.getPageStep();
var bI=this.__nF<0?N:z;
bD=bE+(Math[bI]((bD-bE)/bC)*bC);
}if(this.__nG==null||(this.__nF==-1&&bD<=this.__nG)||(this.__nF==1&&bD>=this.__nG)){this.__nG=bD;
}},_positionToValue:function(bK){var bL=this.__nK;
if(bL==null||bL==0){return 0;
}var bN=bK/bL;

if(bN<0){bN=0;
}else if(bN>1){bN=1;
}var bM=this.getMaximum()-this.getMinimum();
return this.getMinimum()+Math.round(bM*bN);
},_valueToPosition:function(bO){var bP=this.__nK;

if(bP==null){return 0;
}var bQ=this.getMaximum()-this.getMinimum();
if(bQ==0){return 0;
}var bO=bO-this.getMinimum();
var bR=bO/bQ;

if(bR<0){bR=0;
}else if(bR>1){bR=1;
}return Math.round(bP*bR);
},_updateKnobPosition:function(){this._setKnobPosition(this._valueToPosition(this.getValue()));
},_setKnobPosition:function(bS){var bT=this.getChildControl(k).getContainerElement();

if(this.__nw){bT.setStyle(f,bS+a,true);
}else{bT.setStyle(d,bS+a,true);
}},_updateKnobSize:function(){var bV=this.getKnobFactor();

if(bV==null){return;
}var bU=this.getInnerSize();

if(bU==null){return;
}if(this.__nw){this.getChildControl(k).setWidth(Math.round(bV*bU.width));
}else{this.getChildControl(k).setHeight(Math.round(bV*bU.height));
}},slideToBegin:function(){this.slideTo(this.getMinimum());
},slideToEnd:function(){this.slideTo(this.getMaximum());
},slideForward:function(){this.slideBy(this.getSingleStep());
},slideBack:function(){this.slideBy(-this.getSingleStep());
},slidePageForward:function(){this.slideBy(this.getPageStep());
},slidePageBack:function(){this.slideBy(-this.getPageStep());
},slideBy:function(bW){this.slideTo(this.getValue()+bW);
},slideTo:function(bX){if(bX<this.getMinimum()){bX=this.getMinimum();
}else if(bX>this.getMaximum()){bX=this.getMaximum();
}else{bX=this.getMinimum()+Math.round((bX-this.getMinimum())/this.getSingleStep())*this.getSingleStep();
}this.setValue(bX);
},_applyOrientation:function(bY,ca){var cb=this.getChildControl(k);
this.__nw=bY===j;
if(this.__nw){this.removeState(i);
cb.removeState(i);
this.addState(j);
cb.addState(j);
cb.setLayoutProperties({top:0,right:null,bottom:0});
}else{this.removeState(j);
cb.removeState(j);
this.addState(i);
cb.addState(i);
cb.setLayoutProperties({right:0,bottom:null,left:0});
}this._updateKnobPosition();
},_applyKnobFactor:function(cc,cd){if(cc!=null){this._updateKnobSize();
}else{if(this.__nw){this.getChildControl(k).resetWidth();
}else{this.getChildControl(k).resetHeight();
}}},_applyValue:function(ce,cf){if(ce!=null){this._updateKnobPosition();

if(this.__nC){this.__nJ=[ce,cf];
}else{this.fireEvent(X,qx.event.type.Data,[ce,cf]);
}}else{this.resetValue();
}},_fireValue:function(){if(!this.__nJ){return;
}var cg=this.__nJ;
this.__nJ=null;
this.fireEvent(X,qx.event.type.Data,cg);
},_applyMinimum:function(ch,ci){if(this.getValue()<ch){this.setValue(ch);
}this._updateKnobPosition();
},_applyMaximum:function(cj,ck){if(this.getValue()>cj){this.setValue(cj);
}this._updateKnobPosition();
}}});
})();
(function(){var d="horizontal",c="mousewheel",b="qx.ui.core.scroll.ScrollSlider",a="keypress";
qx.Class.define(b,{extend:qx.ui.form.Slider,construct:function(e){qx.ui.form.Slider.call(this,e);
this.removeListener(a,this._onKeyPress);
this.removeListener(c,this._onMouseWheel);
},members:{getSizeHint:function(f){var g=qx.ui.form.Slider.prototype.getSizeHint.call(this);
if(this.getOrientation()===d){g.width=0;
}else{g.height=0;
}return g;
}}});
})();
(function(){var k="scrollbar-y",j="scrollbar-x",i="pane",h="auto",g="os.scrollBarOverlayed",f="corner",d="scrollbar-",c="on",b="_computeScrollbars",a="getDocument",F="changeVisibility",E="off",D="x",C="scroll",B="touchmove",A="scrollY",z="Left",y="mousewheel",x="scrollbarX",w="event.touch",r="scrollarea",s="y",p="vertical",q="scrollX",n="touchstart",o="horizontal",l="qx.ui.core.scroll.AbstractScrollArea",m="abstract",t="update",u="scrollbarY",v="Top";
qx.Class.define(l,{extend:qx.ui.core.Widget,include:[qx.ui.core.scroll.MScrollBarFactory,qx.ui.core.scroll.MWheelHandling],type:m,construct:function(){qx.ui.core.Widget.call(this);

if(qx.core.Environment.get(g)){this._setLayout(new qx.ui.layout.Canvas());
}else{var G=new qx.ui.layout.Grid();
G.setColumnFlex(0,1);
G.setRowFlex(0,1);
this._setLayout(G);
}this.addListener(y,this._onMouseWheel,this);
if(qx.core.Environment.get(w)){this.addListener(B,this._onTouchMove,this);
this.addListener(n,function(){this.__cN={"x":0,"y":0};
},this);
this.__cN={};
this.__nM={};
}},properties:{appearance:{refine:true,init:r},width:{refine:true,init:100},height:{refine:true,init:200},scrollbarX:{check:[h,c,E],init:h,themeable:true,apply:b},scrollbarY:{check:[h,c,E],init:h,themeable:true,apply:b},scrollbar:{group:[x,u]}},members:{__cN:null,__nM:null,_createChildControlImpl:function(H,I){var J;

switch(H){case i:J=new qx.ui.core.scroll.ScrollPane();
J.addListener(t,this._computeScrollbars,this);
J.addListener(q,this._onScrollPaneX,this);
J.addListener(A,this._onScrollPaneY,this);

if(qx.core.Environment.get(g)){this._add(J,{edge:0});
}else{this._add(J,{row:0,column:0});
}break;
case j:J=this._createScrollBar(o);
J.setMinWidth(0);
J.exclude();
J.addListener(C,this._onScrollBarX,this);
J.addListener(F,this._onChangeScrollbarXVisibility,this);

if(qx.core.Environment.get(g)){J.setMinHeight(qx.bom.element.Overflow.DEFAULT_SCROLLBAR_WIDTH);
this._add(J,{bottom:0,right:0,left:0});
}else{this._add(J,{row:1,column:0});
}break;
case k:J=this._createScrollBar(p);
J.setMinHeight(0);
J.exclude();
J.addListener(C,this._onScrollBarY,this);
J.addListener(F,this._onChangeScrollbarYVisibility,this);

if(qx.core.Environment.get(g)){J.setMinWidth(qx.bom.element.Overflow.DEFAULT_SCROLLBAR_WIDTH);
this._add(J,{right:0,bottom:0,top:0});
}else{this._add(J,{row:0,column:1});
}break;
case f:J=new qx.ui.core.Widget();
J.setWidth(0);
J.setHeight(0);
J.exclude();

if(!qx.core.Environment.get(g)){this._add(J,{row:1,column:1});
}break;
}return J||qx.ui.core.Widget.prototype._createChildControlImpl.call(this,H);
},getPaneSize:function(){return this.getChildControl(i).getInnerSize();
},getItemTop:function(K){return this.getChildControl(i).getItemTop(K);
},getItemBottom:function(L){return this.getChildControl(i).getItemBottom(L);
},getItemLeft:function(M){return this.getChildControl(i).getItemLeft(M);
},getItemRight:function(N){return this.getChildControl(i).getItemRight(N);
},scrollToX:function(O){qx.ui.core.queue.Manager.flush();
this.getChildControl(j).scrollTo(O);
},scrollByX:function(P){qx.ui.core.queue.Manager.flush();
this.getChildControl(j).scrollBy(P);
},getScrollX:function(){var Q=this.getChildControl(j,true);
return Q?Q.getPosition():0;
},scrollToY:function(R){qx.ui.core.queue.Manager.flush();
this.getChildControl(k).scrollTo(R);
},scrollByY:function(S){qx.ui.core.queue.Manager.flush();
this.getChildControl(k).scrollBy(S);
},getScrollY:function(){var T=this.getChildControl(k,true);
return T?T.getPosition():0;
},_onScrollBarX:function(e){this.getChildControl(i).scrollToX(e.getData());
},_onScrollBarY:function(e){this.getChildControl(i).scrollToY(e.getData());
},_onScrollPaneX:function(e){this.scrollToX(e.getData());
},_onScrollPaneY:function(e){this.scrollToY(e.getData());
},_onTouchMove:function(e){this._onTouchMoveDirectional(D,e);
this._onTouchMoveDirectional(s,e);
e.stop();
},_onTouchMoveDirectional:function(U,e){var V=(U==D?z:v);
var X=this.getChildControl(d+U,true);
var Y=this._isChildControlVisible(d+U);

if(Y&&X){if(this.__cN[U]==0){var W=0;
}else{var W=-(e[a+V]()-this.__cN[U]);
}this.__cN[U]=e[a+V]();
X.scrollBy(W);
if(this.__nM[U]){clearTimeout(this.__nM[U]);
this.__nM[U]=null;
}this.__nM[U]=setTimeout(qx.lang.Function.bind(function(ba){this.__nN(ba,U);
},this,W),100);
}},__nN:function(bb,bc){this.__nM[bc]=null;
var be=this._isChildControlVisible(d+bc);

if(bb==0||!be){return;
}if(bb>0){bb=Math.max(0,bb-3);
}else{bb=Math.min(0,bb+3);
}this.__nM[bc]=setTimeout(qx.lang.Function.bind(function(bf,bg){this.__nN(bf,bg);
},this,bb,bc),20);
var bd=this.getChildControl(d+bc,true);
bd.scrollBy(bb);
},_onChangeScrollbarXVisibility:function(e){var bh=this._isChildControlVisible(j);
var bi=this._isChildControlVisible(k);

if(!bh){this.scrollToX(0);
}bh&&bi?this._showChildControl(f):this._excludeChildControl(f);
},_onChangeScrollbarYVisibility:function(e){var bj=this._isChildControlVisible(j);
var bk=this._isChildControlVisible(k);

if(!bk){this.scrollToY(0);
}bj&&bk?this._showChildControl(f):this._excludeChildControl(f);
},_computeScrollbars:function(){var br=this.getChildControl(i);
var content=br.getChildren()[0];

if(!content){this._excludeChildControl(j);
this._excludeChildControl(k);
return;
}var bl=this.getInnerSize();
var bq=br.getInnerSize();
var bo=br.getScrollSize();
if(!bq||!bo){return;
}var bs=this.getScrollbarX();
var bt=this.getScrollbarY();

if(bs===h&&bt===h){var bp=bo.width>bl.width;
var bu=bo.height>bl.height;
if((bp||bu)&&!(bp&&bu)){if(bp){bu=bo.height>bq.height;
}else if(bu){bp=bo.width>bq.width;
}}}else{var bp=bs===c;
var bu=bt===c;
if(bo.width>(bp?bq.width:bl.width)&&bs===h){bp=true;
}
if(bo.height>(bp?bq.height:bl.height)&&bt===h){bu=true;
}}if(bp){var bn=this.getChildControl(j);
bn.show();
bn.setMaximum(Math.max(0,bo.width-bq.width));
bn.setKnobFactor((bo.width===0)?0:bq.width/bo.width);
}else{this._excludeChildControl(j);
}
if(bu){var bm=this.getChildControl(k);
bm.show();
bm.setMaximum(Math.max(0,bo.height-bq.height));
bm.setKnobFactor((bo.height===0)?0:bq.height/bo.height);
}else{this._excludeChildControl(k);
}}},defer:function(){qx.core.Environment.add(g,qx.bom.element.Overflow.scollBarOverlayed);
}});
})();
(function(){var m="horizontal",k="qx.event.type.Data",j="vertical",h="",g="qx.ui.form.List",f="text",d="Boolean",c="one",b="addChildWidget",a="_applySpacing",A="Enter",z="Integer",y="action",x="keyinput",w="__nO",v="addItem",u="removeChildWidget",t="_applyOrientation",s="single",r="keypress",p="list",q="label",n="pane",o="removeItem";
qx.Class.define(g,{extend:qx.ui.core.scroll.AbstractScrollArea,implement:[qx.ui.core.IMultiSelection,qx.ui.form.IForm,qx.ui.form.IModelSelection],include:[qx.ui.core.MRemoteChildrenHandling,qx.ui.core.MMultiSelectionHandling,qx.ui.form.MForm,qx.ui.form.MModelSelection],construct:function(B){qx.ui.core.scroll.AbstractScrollArea.call(this);
this.__nO=this._createListItemContainer();
this.__nO.addListener(b,this._onAddChild,this);
this.__nO.addListener(u,this._onRemoveChild,this);
this.getChildControl(n).add(this.__nO);
if(B){this.setOrientation(m);
}else{this.initOrientation();
}this.addListener(r,this._onKeyPress);
this.addListener(x,this._onKeyInput);
this.__nP=h;
},events:{addItem:k,removeItem:k},properties:{appearance:{refine:true,init:p},focusable:{refine:true,init:true},orientation:{check:[m,j],init:j,apply:t},spacing:{check:z,init:0,apply:a,themeable:true},enableInlineFind:{check:d,init:true}},members:{__nP:null,__nQ:null,__nO:null,SELECTION_MANAGER:qx.ui.core.selection.ScrollArea,getChildrenContainer:function(){return this.__nO;
},_onAddChild:function(e){this.fireDataEvent(v,e.getData());
},_onRemoveChild:function(e){this.fireDataEvent(o,e.getData());
},handleKeyPress:function(e){if(!this._onKeyPress(e)){this._getManager().handleKeyPress(e);
}},_createListItemContainer:function(){return new qx.ui.container.Composite;
},_applyOrientation:function(C,D){var E=C===m;
var F=E?new qx.ui.layout.HBox():new qx.ui.layout.VBox();
var content=this.__nO;
content.setLayout(F);
content.setAllowGrowX(!E);
content.setAllowGrowY(E);
this._applySpacing(this.getSpacing());
},_applySpacing:function(G,H){this.__nO.getLayout().setSpacing(G);
},_onKeyPress:function(e){if(e.getKeyIdentifier()==A&&!e.isAltPressed()){var I=this.getSelection();

for(var i=0;i<I.length;i++){I[i].fireEvent(y);
}return true;
}return false;
},_onKeyInput:function(e){if(!this.getEnableInlineFind()){return;
}var J=this.getSelectionMode();

if(!(J===s||J===c)){return;
}if(((new Date).valueOf()-this.__nQ)>1000){this.__nP=h;
}this.__nP+=e.getChar();
var K=this.findItemByLabelFuzzy(this.__nP);
if(K){this.setSelection([K]);
}this.__nQ=(new Date).valueOf();
},findItemByLabelFuzzy:function(L){L=L.toLowerCase();
var M=this.getChildren();
for(var i=0,l=M.length;i<l;i++){var N=M[i].getLabel();
if(N&&N.toLowerCase().indexOf(L)==0){return M[i];
}}return null;
},findItem:function(O,P){if(P!==false){O=O.toLowerCase();
}var S=this.getChildren();
var U;
for(var i=0,l=S.length;i<l;i++){U=S[i];
var T;

if(U.isRich()){var Q=U.getChildControl(q,true);

if(Q){var R=Q.getContentElement().getDomElement();

if(R){T=qx.bom.element.Attribute.get(R,f);
}}}else{T=U.getLabel();
}
if(T!=null){if(T.translate){T=T.translate();
}
if(P!==false){T=T.toLowerCase();
}
if(T.toString()==O.toString()){return U;
}}}return null;
}},destruct:function(){this._disposeObjects(w);
}});
})();
(function(){var g="",f="<br",e=" &nbsp;",d="<br>",c=" ",b="\n",a="qx.bom.String";
qx.Class.define(a,{statics:{TO_CHARCODE:{"quot":34,"amp":38,"lt":60,"gt":62,"nbsp":160,"iexcl":161,"cent":162,"pound":163,"curren":164,"yen":165,"brvbar":166,"sect":167,"uml":168,"copy":169,"ordf":170,"laquo":171,"not":172,"shy":173,"reg":174,"macr":175,"deg":176,"plusmn":177,"sup2":178,"sup3":179,"acute":180,"micro":181,"para":182,"middot":183,"cedil":184,"sup1":185,"ordm":186,"raquo":187,"frac14":188,"frac12":189,"frac34":190,"iquest":191,"Agrave":192,"Aacute":193,"Acirc":194,"Atilde":195,"Auml":196,"Aring":197,"AElig":198,"Ccedil":199,"Egrave":200,"Eacute":201,"Ecirc":202,"Euml":203,"Igrave":204,"Iacute":205,"Icirc":206,"Iuml":207,"ETH":208,"Ntilde":209,"Ograve":210,"Oacute":211,"Ocirc":212,"Otilde":213,"Ouml":214,"times":215,"Oslash":216,"Ugrave":217,"Uacute":218,"Ucirc":219,"Uuml":220,"Yacute":221,"THORN":222,"szlig":223,"agrave":224,"aacute":225,"acirc":226,"atilde":227,"auml":228,"aring":229,"aelig":230,"ccedil":231,"egrave":232,"eacute":233,"ecirc":234,"euml":235,"igrave":236,"iacute":237,"icirc":238,"iuml":239,"eth":240,"ntilde":241,"ograve":242,"oacute":243,"ocirc":244,"otilde":245,"ouml":246,"divide":247,"oslash":248,"ugrave":249,"uacute":250,"ucirc":251,"uuml":252,"yacute":253,"thorn":254,"yuml":255,"fnof":402,"Alpha":913,"Beta":914,"Gamma":915,"Delta":916,"Epsilon":917,"Zeta":918,"Eta":919,"Theta":920,"Iota":921,"Kappa":922,"Lambda":923,"Mu":924,"Nu":925,"Xi":926,"Omicron":927,"Pi":928,"Rho":929,"Sigma":931,"Tau":932,"Upsilon":933,"Phi":934,"Chi":935,"Psi":936,"Omega":937,"alpha":945,"beta":946,"gamma":947,"delta":948,"epsilon":949,"zeta":950,"eta":951,"theta":952,"iota":953,"kappa":954,"lambda":955,"mu":956,"nu":957,"xi":958,"omicron":959,"pi":960,"rho":961,"sigmaf":962,"sigma":963,"tau":964,"upsilon":965,"phi":966,"chi":967,"psi":968,"omega":969,"thetasym":977,"upsih":978,"piv":982,"bull":8226,"hellip":8230,"prime":8242,"Prime":8243,"oline":8254,"frasl":8260,"weierp":8472,"image":8465,"real":8476,"trade":8482,"alefsym":8501,"larr":8592,"uarr":8593,"rarr":8594,"darr":8595,"harr":8596,"crarr":8629,"lArr":8656,"uArr":8657,"rArr":8658,"dArr":8659,"hArr":8660,"forall":8704,"part":8706,"exist":8707,"empty":8709,"nabla":8711,"isin":8712,"notin":8713,"ni":8715,"prod":8719,"sum":8721,"minus":8722,"lowast":8727,"radic":8730,"prop":8733,"infin":8734,"ang":8736,"and":8743,"or":8744,"cap":8745,"cup":8746,"int":8747,"there4":8756,"sim":8764,"cong":8773,"asymp":8776,"ne":8800,"equiv":8801,"le":8804,"ge":8805,"sub":8834,"sup":8835,"sube":8838,"supe":8839,"oplus":8853,"otimes":8855,"perp":8869,"sdot":8901,"lceil":8968,"rceil":8969,"lfloor":8970,"rfloor":8971,"lang":9001,"rang":9002,"loz":9674,"spades":9824,"clubs":9827,"hearts":9829,"diams":9830,"OElig":338,"oelig":339,"Scaron":352,"scaron":353,"Yuml":376,"circ":710,"tilde":732,"ensp":8194,"emsp":8195,"thinsp":8201,"zwnj":8204,"zwj":8205,"lrm":8206,"rlm":8207,"ndash":8211,"mdash":8212,"lsquo":8216,"rsquo":8217,"sbquo":8218,"ldquo":8220,"rdquo":8221,"bdquo":8222,"dagger":8224,"Dagger":8225,"permil":8240,"lsaquo":8249,"rsaquo":8250,"euro":8364},escape:function(h){return qx.util.StringEscape.escape(h,qx.bom.String.FROM_CHARCODE);
},unescape:function(i){return qx.util.StringEscape.unescape(i,qx.bom.String.TO_CHARCODE);
},fromText:function(j){return qx.bom.String.escape(j).replace(/(  |\n)/g,function(k){var l={"  ":e,"\n":d};
return l[k]||k;
});
},toText:function(m){return qx.bom.String.unescape(m.replace(/\s+|<([^>])+>/gi,function(n){if(n.indexOf(f)===0){return b;
}else if(n.length>0&&n.replace(/^\s*/,g).replace(/\s*$/,g)==g){return c;
}else{return g;
}}));
}},defer:function(o){o.FROM_CHARCODE=qx.lang.Object.invert(o.TO_CHARCODE);
}});
})();
(function(){var g=";",f="&",e='X',d="",c='#',b="&#",a="qx.util.StringEscape";
qx.Class.define(a,{statics:{escape:function(h,j){var m,o=d;

for(var i=0,l=h.length;i<l;i++){var n=h.charAt(i);
var k=n.charCodeAt(0);

if(j[k]){m=f+j[k]+g;
}else{if(k>0x7F){m=b+k+g;
}else{m=n;
}}o+=m;
}return o;
},unescape:function(p,q){return p.replace(/&[#\w]+;/gi,function(r){var s=r;
var r=r.substring(1,r.length-1);
var t=q[r];

if(t){s=String.fromCharCode(t);
}else{if(r.charAt(0)==c){if(r.charAt(1).toUpperCase()==e){t=r.substring(2);
if(t.match(/^[0-9A-Fa-f]+$/gi)){s=String.fromCharCode(parseInt(t,16));
}}else{t=r.substring(1);
if(t.match(/^\d+$/gi)){s=String.fromCharCode(parseInt(t,10));
}}}}return s;
});
}}});
})();
(function(){var k="list",j="atom",i="pressed",h="abandoned",g="popup",f="hovered",d="changeLabel",c="changeIcon",b="arrow",a="",A="spacer",z="Enter",y="one",x="mouseout",w="Space",v="key",u="mousewheel",t="keyinput",s="changeSelection",r="y",p="qx.ui.form.SelectBox",q="mouseover",n="selectbox",o="click",l="quick",m=" ";
qx.Class.define(p,{extend:qx.ui.form.AbstractSelectBox,implement:[qx.ui.core.ISingleSelection,qx.ui.form.IModelSelection],include:[qx.ui.core.MSingleSelectionHandling,qx.ui.form.MModelSelection],construct:function(){qx.ui.form.AbstractSelectBox.call(this);
this._createChildControl(j);
this._createChildControl(A);
this._createChildControl(b);
this.addListener(q,this._onMouseOver,this);
this.addListener(x,this._onMouseOut,this);
this.addListener(o,this._onClick,this);
this.addListener(u,this._onMouseWheel,this);
this.addListener(t,this._onKeyInput,this);
this.addListener(s,this.__mF,this);
},properties:{appearance:{refine:true,init:n}},members:{__nR:null,_createChildControlImpl:function(B,C){var D;

switch(B){case A:D=new qx.ui.core.Spacer();
this._add(D,{flex:1});
break;
case j:D=new qx.ui.basic.Atom(m);
D.setCenter(false);
D.setAnonymous(true);
this._add(D,{flex:1});
break;
case b:D=new qx.ui.basic.Image();
D.setAnonymous(true);
this._add(D);
break;
}return D||qx.ui.form.AbstractSelectBox.prototype._createChildControlImpl.call(this,B);
},_forwardStates:{focused:true},_getItems:function(){return this.getChildrenContainer().getChildren();
},_isAllowEmptySelection:function(){return this.getChildrenContainer().getSelectionMode()!==y;
},__mF:function(e){var F=e.getData()[0];
var E=this.getChildControl(k);

if(E.getSelection()[0]!=F){if(F){E.setSelection([F]);
}else{E.resetSelection();
}}this.__nS();
this.__nT();
},__nS:function(){var H=this.getChildControl(k).getSelection()[0];
var I=this.getChildControl(j);
var G=H?H.getIcon():a;
G==null?I.resetIcon():I.setIcon(G);
},__nT:function(){var L=this.getChildControl(k).getSelection()[0];
var M=this.getChildControl(j);
var K=L?L.getLabel():a;
var J=this.getFormat();

if(J!=null){K=J.call(this,L);
}if(K&&K.translate){K=K.translate();
}K==null?M.resetLabel():M.setLabel(K);
},_onMouseOver:function(e){if(!this.isEnabled()||e.getTarget()!==this){return;
}
if(this.hasState(h)){this.removeState(h);
this.addState(i);
}this.addState(f);
},_onMouseOut:function(e){if(!this.isEnabled()||e.getTarget()!==this){return;
}this.removeState(f);

if(this.hasState(i)){this.removeState(i);
this.addState(h);
}},_onClick:function(e){this.toggle();
},_onMouseWheel:function(e){if(this.getChildControl(g).isVisible()){return;
}var O=e.getWheelDelta(r)>0?1:-1;
var Q=this.getSelectables();
var P=this.getSelection()[0];

if(!P){P=Q[0];
}var N=Q.indexOf(P)+O;
var R=Q.length-1;
if(N<0){N=0;
}else if(N>=R){N=R;
}this.setSelection([Q[N]]);
e.stopPropagation();
e.preventDefault();
},_onKeyPress:function(e){var S=e.getKeyIdentifier();

if(S==z||S==w){if(this.__nR){this.setSelection([this.__nR]);
this.__nR=null;
}this.toggle();
}else{qx.ui.form.AbstractSelectBox.prototype._onKeyPress.call(this,e);
}},_onKeyInput:function(e){var T=e.clone();
T.setTarget(this._list);
T.setBubbles(false);
this.getChildControl(k).dispatchEvent(T);
},_onListMouseDown:function(e){if(this.__nR){this.setSelection([this.__nR]);
this.__nR=null;
}},_onListChangeSelection:function(e){var U=e.getData();
var X=e.getOldData();
if(X&&X.length>0){X[0].removeListener(c,this.__nS,this);
X[0].removeListener(d,this.__nT,this);
}
if(U.length>0){var W=this.getChildControl(g);
var V=this.getChildControl(k);
var Y=V.getSelectionContext();

if(W.isVisible()&&(Y==l||Y==v)){this.__nR=U[0];
}else{this.setSelection([U[0]]);
this.__nR=null;
}U[0].addListener(c,this.__nS,this);
U[0].addListener(d,this.__nT,this);
}else{this.resetSelection();
}},_onPopupChangeVisibility:function(e){qx.ui.form.AbstractSelectBox.prototype._onPopupChangeVisibility.call(this,e);
var bb=this.getChildControl(g);

if(!bb.isVisible()){var bd=this.getChildControl(k);
if(bd.hasChildren()){bd.setSelection(this.getSelection());
}}else{var ba=bb.getLayoutLocation(this);
var bf=qx.bom.Viewport.getHeight();
var be=ba.top;
var bg=bf-ba.bottom;
var bc=be>bg?be:bg;
var bh=this.getMaxListHeight();
var bd=this.getChildControl(k);

if(bh==null||bh>bc){bd.setMaxHeight(bc);
}else if(bh<bc){bd.setMaxHeight(bh);
}}}},destruct:function(){this.__nR=null;
}});
})();
(function(){var a="qx.ui.core.Spacer";
qx.Class.define(a,{extend:qx.ui.core.LayoutItem,construct:function(b,c){qx.ui.core.LayoutItem.call(this);
this.setWidth(b!=null?b:0);
this.setHeight(c!=null?c:0);
},members:{checkAppearanceNeeds:function(){},addChildrenToQueue:function(d){},destroy:function(){if(this.$$disposed){return;
}var parent=this.$$parent;

if(parent){parent._remove(this);
}qx.ui.core.queue.Dispose.add(this);
}}});
})();
(function(){var n="Validation Error",m="%1 is not a number.",l="%1 is not a color! %2",k="",j="%1 is not a string.",i="number",h="'%1' is not an email address.",g="qx.util.Validate",f="%1 is not an url.",d="%1 is not in %2",a="%1 does not fit %2.",c="string",b="%1 is not in the range from [%2, %3].";
qx.Class.define(g,{statics:{number:function(o){return function(p){qx.util.Validate.checkNumber(p,null,o);
};
},checkNumber:function(q,r,s){s=s||qx.locale.Manager.tr(m,q);

if((typeof q!==i&&(!(q instanceof Number)))||(!(isFinite(q)))){throw new qx.core.ValidationError(n,s);
}},email:function(t){return function(u){qx.util.Validate.checkEmail(u,null,t);
};
},checkEmail:function(v,w,x){x=x||qx.locale.Manager.tr(h,(v||k));
var y=/^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;

if(y.test(v)===false){throw new qx.core.ValidationError(n,x);
}},string:function(z){return function(A){qx.util.Validate.checkString(A,null,z);
};
},checkString:function(B,C,D){D=D||qx.locale.Manager.tr(j,B);

if(typeof B!==c&&(!(B instanceof String))){throw new qx.core.ValidationError(n,D);
}},url:function(E){return function(F){qx.util.Validate.checkUrl(F,null,E);
};
},checkUrl:function(G,H,I){I=I||qx.locale.Manager.tr(f,G);
var J=/([A-Za-z0-9])+:\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/;

if(!J.test(G)){throw new qx.core.ValidationError(n,I);
}},color:function(K){return function(L){qx.util.Validate.checkColor(L,null,K);
};
},checkColor:function(M,N,O){try{qx.util.ColorUtil.stringToRgb(M);
}catch(e){O=O||qx.locale.Manager.tr(l,M,e);
throw new qx.core.ValidationError(n,O);
}},range:function(P,Q,R){return function(S){R=R||qx.locale.Manager.tr(b,S,P,Q);

if(S<P||S>Q){throw new qx.core.ValidationError(n,R);
}};
},inArray:function(T,U){return function(V){U=U||qx.locale.Manager.tr(d,V,T);

if(T.indexOf(V)===-1){throw new qx.core.ValidationError(n,U);
}};
},regExp:function(W,X){return function(Y){X=X||qx.locale.Manager.tr(a,Y,W);

if(!W.test(Y)){throw new qx.core.ValidationError(n,X);
}};
}}});
})();
(function(){var k="textfield",j="",i="downbutton",h="upbutton",g="Number",f="inner",d="PageUp",c="Boolean",b="changeValue",a="Down",J="Up",I="execute",H="PageDown",G="changeLocale",F="qx.dynlocale",E="_applyEditable",D="_applyWrap",C="keydown",B="\-]",A="mousewheel",r="_applyValue",s="y",p="number",q="_applyMinimum",n="qx.util.format.NumberFormat",o="[0-9",l="keyup",m="spinner",t="this._checkValue(value)",u="_applyMaximum",w="changeNumberFormat",v="changeMaximum",y="changeMinimum",x="_applyNumberFormat",z="qx.ui.form.Spinner";
qx.Class.define(z,{extend:qx.ui.core.Widget,implement:[qx.ui.form.INumberForm,qx.ui.form.IRange,qx.ui.form.IForm],include:[qx.ui.core.MContentPadding,qx.ui.form.MForm],construct:function(K,L,M){qx.ui.core.Widget.call(this);
var N=new qx.ui.layout.Grid();
N.setColumnFlex(0,1);
N.setRowFlex(0,1);
N.setRowFlex(1,1);
this._setLayout(N);
this.addListener(C,this._onKeyDown,this);
this.addListener(l,this._onKeyUp,this);
this.addListener(A,this._onMouseWheel,this);

if(qx.core.Environment.get(F)){qx.locale.Manager.getInstance().addListener(G,this._onChangeLocale,this);
}this._createChildControl(k);
this._createChildControl(h);
this._createChildControl(i);
if(K!=null){this.setMinimum(K);
}
if(M!=null){this.setMaximum(M);
}
if(L!==undefined){this.setValue(L);
}else{this.initValue();
}},properties:{appearance:{refine:true,init:m},focusable:{refine:true,init:true},singleStep:{check:g,init:1},pageStep:{check:g,init:10},minimum:{check:g,apply:q,init:0,event:y},value:{check:t,nullable:true,apply:r,init:0,event:b},maximum:{check:g,apply:u,init:100,event:v},wrap:{check:c,init:false,apply:D},editable:{check:c,init:true,apply:E},numberFormat:{check:n,apply:x,nullable:true},allowShrinkY:{refine:true,init:false}},members:{__on:null,__oo:false,__op:false,_createChildControlImpl:function(O,P){var Q;

switch(O){case k:Q=new qx.ui.form.TextField();
Q.setFilter(this._getFilterRegExp());
Q.addState(f);
Q.setWidth(40);
Q.setFocusable(false);
Q.addListener(b,this._onTextChange,this);
this._add(Q,{column:0,row:0,rowSpan:2});
break;
case h:Q=new qx.ui.form.RepeatButton();
Q.addState(f);
Q.setFocusable(false);
Q.addListener(I,this._countUp,this);
this._add(Q,{column:1,row:0});
break;
case i:Q=new qx.ui.form.RepeatButton();
Q.addState(f);
Q.setFocusable(false);
Q.addListener(I,this._countDown,this);
this._add(Q,{column:1,row:1});
break;
}return Q||qx.ui.core.Widget.prototype._createChildControlImpl.call(this,O);
},_getFilterRegExp:function(){var V=qx.locale.Number.getDecimalSeparator(qx.locale.Manager.getInstance().getLocale());
var U=qx.locale.Number.getGroupSeparator(qx.locale.Manager.getInstance().getLocale());
var T=j;
var R=j;

if(this.getNumberFormat()!==null){T=this.getNumberFormat().getPrefix()||j;
R=this.getNumberFormat().getPostfix()||j;
}var S=new RegExp(o+qx.lang.String.escapeRegexpChars(V)+qx.lang.String.escapeRegexpChars(U)+qx.lang.String.escapeRegexpChars(T)+qx.lang.String.escapeRegexpChars(R)+B);
return S;
},_forwardStates:{focused:true,invalid:true},tabFocus:function(){var W=this.getChildControl(k);
W.getFocusElement().focus();
W.selectAllText();
},_applyMinimum:function(X,Y){if(this.getMaximum()<X){this.setMaximum(X);
}
if(this.getValue()<X){this.setValue(X);
}else{this._updateButtons();
}},_applyMaximum:function(ba,bb){if(this.getMinimum()>ba){this.setMinimum(ba);
}
if(this.getValue()>ba){this.setValue(ba);
}else{this._updateButtons();
}},_applyEnabled:function(bc,bd){qx.ui.core.Widget.prototype._applyEnabled.call(this,bc,bd);
this._updateButtons();
},_checkValue:function(be){return typeof be===p&&be>=this.getMinimum()&&be<=this.getMaximum();
},_applyValue:function(bf,bg){var bh=this.getChildControl(k);
this._updateButtons();
this.__on=bf;
if(bf!==null){if(this.getNumberFormat()){bh.setValue(this.getNumberFormat().format(bf));
}else{bh.setValue(bf+j);
}}else{bh.setValue(j);
}},_applyEditable:function(bi,bj){var bk=this.getChildControl(k);

if(bk){bk.setReadOnly(!bi);
}},_applyWrap:function(bl,bm){this._updateButtons();
},_applyNumberFormat:function(bn,bo){var bp=this.getChildControl(k);
bp.setFilter(this._getFilterRegExp());
this.getNumberFormat().addListener(w,this._onChangeNumberFormat,this);
this._applyValue(this.__on,undefined);
},_getContentPaddingTarget:function(){return this.getChildControl(k);
},_updateButtons:function(){var br=this.getChildControl(h);
var bq=this.getChildControl(i);
var bs=this.getValue();

if(!this.getEnabled()){br.setEnabled(false);
bq.setEnabled(false);
}else{if(this.getWrap()){br.setEnabled(true);
bq.setEnabled(true);
}else{if(bs!==null&&bs<this.getMaximum()){br.setEnabled(true);
}else{br.setEnabled(false);
}if(bs!==null&&bs>this.getMinimum()){bq.setEnabled(true);
}else{bq.setEnabled(false);
}}}},_onKeyDown:function(e){switch(e.getKeyIdentifier()){case d:this.__oo=true;
case J:this.getChildControl(h).press();
break;
case H:this.__op=true;
case a:this.getChildControl(i).press();
break;
default:return ;
}e.stopPropagation();
e.preventDefault();
},_onKeyUp:function(e){switch(e.getKeyIdentifier()){case d:this.getChildControl(h).release();
this.__oo=false;
break;
case J:this.getChildControl(h).release();
break;
case H:this.getChildControl(i).release();
this.__op=false;
break;
case a:this.getChildControl(i).release();
break;
}},_onMouseWheel:function(e){var bt=e.getWheelDelta(s);

if(bt>0){this._countDown();
}else if(bt<0){this._countUp();
}e.stop();
},_onTextChange:function(e){var bu=this.getChildControl(k);
var bv;
if(this.getNumberFormat()){try{bv=this.getNumberFormat().parse(bu.getValue());
}catch(bw){}}if(bv===undefined){bv=parseFloat(bu.getValue());
}if(!isNaN(bv)){if(bv>this.getMaximum()){bu.setValue(this.getMaximum()+j);
return;
}else if(bv<this.getMinimum()){bu.setValue(this.getMinimum()+j);
return;
}this.setValue(bv);
}else{this._applyValue(this.__on,undefined);
}},_onChangeLocale:function(bx){if(this.getNumberFormat()!==null){this.setNumberFormat(this.getNumberFormat());
var by=this.getChildControl(k);
by.setFilter(this._getFilterRegExp());
by.setValue(this.getNumberFormat().format(this.getValue()));
}},_onChangeNumberFormat:function(bz){var bA=this.getChildControl(k);
bA.setFilter(this._getFilterRegExp());
bA.setValue(this.getNumberFormat().format(this.getValue()));
},_countUp:function(){if(this.__oo){var bC=this.getValue()+this.getPageStep();
}else{var bC=this.getValue()+this.getSingleStep();
}if(this.getWrap()){if(bC>this.getMaximum()){var bB=this.getMaximum()-bC;
bC=this.getMinimum()+bB;
}}this.gotoValue(bC);
},_countDown:function(){if(this.__op){var bE=this.getValue()-this.getPageStep();
}else{var bE=this.getValue()-this.getSingleStep();
}if(this.getWrap()){if(bE<this.getMinimum()){var bD=this.getMinimum()+bE;
bE=this.getMaximum()-bD;
}}this.gotoValue(bE);
},gotoValue:function(bF){return this.setValue(Math.min(this.getMaximum(),Math.max(this.getMinimum(),bF)));
}},destruct:function(){if(qx.core.Environment.get(F)){qx.locale.Manager.getInstance().removeListener(G,this._onChangeLocale,this);
}}});
})();
(function(){var d="cldr_number_decimal_separator",c="cldr_number_percent_format",b="qx.locale.Number",a="cldr_number_group_separator";
qx.Class.define(b,{statics:{getDecimalSeparator:function(e){return qx.locale.Manager.getInstance().localize(d,[],e);
},getGroupSeparator:function(f){return qx.locale.Manager.getInstance().localize(a,[],f);
},getPercentFormat:function(g){return qx.locale.Manager.getInstance().localize(c,[],g);
}}});
})();
(function(){var n="updateBuddy",m="addTrack",l="removeTrack",k="window text",j="window title",i="%1",h="updateFriendOf",g="16/categories/graphics.png",f="trackDisplayTab.show",e="Configure the display of your tracks and load history tracks",c="Here you can see tracks of your buddy %1",d="track.trackconf.TrackConfigWindow";
var b=50;
var a=150;
qx.Class.define(d,{extend:track.util.WindowWithHelpIcon,construct:function(o,p){track.util.WindowWithHelpIcon.call(this);
this.buddyTO=p||null;
this.setCaption(this.trc(j,i,this.buddyTO.getAliasAndLoginName()));
this.setIcon(xbGetQxIcon(g));
this.trackGui=o;
this.log=this.trackGui.getLogger();
this.trackDisplayTab=null;
this.header=null;
},members:{__nU:function(){var q=this.buddyTO.getDevice();
this.addTrackEventFunc=q.getEventManager().addListener(m,function(r){var s=r.getData().track;
var t=r.getData().taskNameInfo;

if(t!=null&&t.taskName==org.xmlBlaster.util.PropTO.VALUE_TASK_NAMED_GETTRACKS&&t.currTrackIndex<t.countTracks-1)return;
this.log.info("TrackConfigWindow: Received addTrack event for "+s.getTrackName());
this.trackDisplayTab.setTrackNames();
if(s.getNumGpsData()>=0&&this.trackDisplayTab!=null)this.trackDisplayTab.trackDataLoaded(s);
},this);
this.removeTrackEventFunc=q.getEventManager().addListener(l,function(u){var v=u.getData();
this.log.info("TrackConfigWindow: Received removeTrack event for "+v.getTrackName());
this.trackDisplayTab.hideTrack(v);
this.trackDisplayTab.setTrackNames();
this.trackDisplayTab.displayComboCurrent();
},this);
this.updateBuddyListenerFunc=this.trackGui.watchee.getBuddyManager().getEventManager().addListener(n,function(w){if(w.getData().buddyTO.getLoginName()!=this.buddyTO.getLoginName())return;
this.buddyTO=w.getData().buddyTO;
this.setCaption(this.trc(j,i,this.buddyTO.getAliasAndLoginName()));
this.header.setValue(this.getHeaderText());

if(this.trackDisplayTab!=null){this.trackDisplayTab.onChangedBuddyTO(this.buddyTO);
}},this);
this.updateFriendOfListenerFunc=this.trackGui.watchee.getBuddyManager().getEventManager().addListener(h,function(x){if(this.buddyTO==null||x==null||x.getData()==null||x.getData().buddyTO==null||this.buddyTO.getLoginName()!=x.getData().buddyTO.getLoginName())return;
this.log.info("TrackConfigWindow: Received 'updateFriendOf' event for "+this.buddyTO.getLoginName());
var y=x.getData().oldBuddyTO;
var A=this.buddyTO.permissionInboundIsSame(net.watchee.BuddyPermissionTO.PERMISSION_GPS,y);
var z=this.buddyTO.permissionInboundIsSame(net.watchee.BuddyPermissionTO.PERMISSION_GPS_HISTORY,y);

if(A&&z)return;
this.trackDisplayTab.setTrackNames();

if(!A){if(this.buddyTO.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_GPS)){}else{this.trackDisplayTab.hideCurrentTrack();
}}
if(!z){if(this.buddyTO.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_GPS_HISTORY)){this.trackGui.getTracks(this.buddyTO.getLoginName());
}else{this.trackDisplayTab.hideAllHistoryTracks();
}}this.trackDisplayTab.displayComboCurrent();
},this);
if(this.buddyTO.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_GPS_HISTORY)){this.trackGui.getTracks(this.buddyTO.getLoginName());
}},getBuddyTO:function(){return this.buddyTO;
},getTrackConfigWindowTop:function(){if(b>200)b=50;
b+=25;
return b;
},getTrackConfigWindowLeft:function(){if(a>350)a=150;
a+=25;
return a;
},getHeaderText:function(){var B=(this.buddyTO.isCurrentLoginAccount())?(this.trc(k,e)):(this.trc(k,c,this.buddyTO.getAliasAndLoginName()));
return B;
},createTrackConfigWindow:function(){this.moveTo(this.getTrackConfigWindowLeft(),this.getTrackConfigWindowTop());
this.header=new qx.ui.basic.Label(this.getHeaderText());
this.header.setRich(true);
this.add(this.header);
this.tabView=new track.util.EnhancedTabView();
var C=true;

if(this.buddyTO.isPublic())C=false;

if(xbProperties.getBoolean(f,true)){if(C){this.trackDisplayTab=new track.trackconf.TrackDisplayTab(this.trackGui,this.buddyTO);
this.trackDisplayTab.createTab(this.tabView);
}}this.__nU();
this.add(this.tabView);
this.trackGui.getMyRoot().add(this);
this.open();
},makeTrackCurrent:function(D){this.trackDisplayTab.makeTrackCurrent(D);
},destroyPopup:function(){this.trackGui.getMyRoot().remove(this);
this.close();

if(this.trackGui==null)return;
this.log.info("destruct TrackConfigWindow "+this.getBuddyTO().getLoginName());

if(this.addTrackEventFunc!=null)this.buddyTO.getDevice().getEventManager().removeListener(m,this.addTrackEventFunc);
this.addTrackEventFunc=null;

if(this.removeTrackEventFunc!=null)this.buddyTO.getDevice().getEventManager().removeListener(l,this.removeTrackEventFunc);
this.removeTrackEventFunc=null;

if(this.updateBuddyListenerFunc!=null)this.buddyTO.getDevice().getEventManager().removeListener(n,this.updateBuddyListenerFunc);
this.updateBuddyListenerFunc=null;

if(this.updateFriendOfListenerFunc!=null)this.buddyTO.getDevice().getEventManager().removeListener(h,this.updateFriendOfListenerFunc);
this.updateFriendOfListenerFunc=null;
}},destruct:function(){this.destroyPopup();
}});
})();
(function(){var cv="dropdown item",cu="execute",ct="Label",cs="button",cr="16/actions/help-about.png",cq="ToolTip",cp="input info",co="_50_30_25_1.5_70_0000FF_FF0000_jack.png",cn="Track Name [%1]",cm="999.png",bw="AjaxAnimator",bv="trackName",bu="_50_30_25_1.5_70_0000FF_FF0000_12:34.png",bt="_50_30_25_1.5_70_0000FF_FF0000_IN-2.png",bs="errorMsgBox",br="16/categories/development.png",bq="groupbox title",bp="askMsgBox",bo="_50_50_50_2_b_0000FF_FF0000_IN-2.png",bn="middle",cC="_50_30_25_1.5_70_0000FF_FF0000_Mercedes.png",cD="_50_30_25_1.5_70_0000FF_FF0000_X-Y.png",cA="_50_30_25_1.5_70_0000FF_FF0000_IN-1.png",cB="_50_50_50_2_b_0000FF_FF0000_IN-1.png",cy="Showing track failed",cz="left",cw="askMsgBox title",cx="iconName",cE="",cF="label",bU="dynamic/cb/dot-pink-270.png",bT="Red vector",bW="Black circle",bV="pink-dot.png",bY="Watchee",bX="dynamic/cb/dot-red-315.png",cb="Color of segment",ca="Blue vector",bS="Darkgreen circle",bR="Analog Input2 km/h",a="dynamic/center/kreis-violett-000.png",b="Time vector",c="changeSelection",d="22/actions/document-save.png",f="Analog Input1 bar",g="zeppelin90.gif",h="dynamic/center/kreis-orange-225.png",k="Darkgreen vector",m="Tracking Icon",n="Open Popup",cN="dynamic/center/kreis-red-315.png",cM="defaultIcon.labelFormat",cL="Violett circle",cK="Red dot",cR="Login vector",cQ="dynamic/center/kreis-blue-045.png",cP="Delete track",cO="yellow-dot.png",cT="Green dot",cS="22/actions/edit-find.png",M="dynamic/cb/dot-cyan-090.png",N="dynamic/cb/dot-darkgreen-135.png",K="Orange vector",L="dynamic/cb/dot-white-045.png",Q="Green arrow",R="Black vector",O="Yellow dot",P="Hide",I="dynamic/",J="dynamic/center/kreis-green-180.png",v="Green vector",u="#",x="trackDisplayTab.enabled",w="The settings are stored permanently: %1",r="Yellow circle",q="Zeppelin",t="green-dot.png",s="Delete",p="Violett vector",o="tab Title",W="Show",X="red-dot.png",Y="infoMsgBox",ba="You have permission to see history tracks",S="22/places/user-trash.png",T="dynamic/center/kreis-cyan-090.png",U="dynamic/center/kreis-yellow-090.png",V="Track Name [...]",bb="Blue dot",bc="dynamic/center/kreis-white-045.png",F="You have <b>no</b> permission to see current location",E="dynamic/center/kreis-black-000.png",D="You have <b>no</b> permission to see history tracks",C="watchee-point.png",B="Pink vector",A="Hiding %1",z="Configuration",y="dynamic/cb/dot-violett-000.png",H="right",G="22/actions/dialog-cancel.png",bd="dynamic/cb/dot-orange-225.png",be="Pink circle",bf="track.trackconf.TrackDisplayTab",bg="Do you really want to destroy permanently track <br /><b>%1</b> with %2 locations?",bh="infoMsgBox title",bi="22/actions/system-log-out.png",bj="Show Tracks",bk="dropdown field title",bl="Pink dot",bm="Width of segment",bA="dynamic/cb/dot-blue-045.png",bz="dynamic/cb/dot-green-180.png",by="White circle",bx="dynamic/cb/dot-black-000.png",bE="dynamic/center/kreis-darkgreen-135.png",bD="Save Display Settings",bC="changeValue",bB="Current Position",bG="Vector",bF="Track Name [NO PERM]",bN="Blue circle",bO="Alias vector",bL="Segments to show",bM="Yellow vector",bJ="Analog Input2 bar",bK="Red circle",bH="No track 'changeSelected' for %1",bI="Icons to show",bP="dynamic/center/kreis-pink-270.png",bQ="Cyan vector",cf="You have permission to see current location",ce="Configuration saved",ch="Comnbination vector",cg="Analog Input1 km/h",cj="dynamic/cb/dot-yellow-090.png",ci="Cyan circle",cl="White vector",ck="Save track settings for next login session?",cd="Green circle",cc="blue-dot.png",cG="Track Display Settings",cH="green-arrow.png",cI="Orange circle",cJ="Drawing %1";
qx.Class.define(bf,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(cU,cV){qx.core.Object.call(this);
this.trackGui=cU;
this.buddyTO=cV;
var cW=this.buddyTO.getDevice();
this.log=this.trackGui.getLogger();
this.iconHash=new org.xmlBlaster.util.Hashtable();
this.trackNameCurrentlyConfigured=this.buddyTO.getDevice().getCurrentTrack().getTrackName();
this.hasRemoveButton=false;

if(this.buddyTO.isCurrentLoginAccount()||this.buddyTO.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_CFG))this.hasRemoveButton=true;
this.programmaticSetSelected=false;
this.numSegmentsToShowSpinner=null;
this.segmentWidthSpinner=null;
this.numIconsToShowSpinner=null;
this.iconSelectBox=null;
this.saveConfigButton=null;
this.colorPopup=null;
},members:{onChangedBuddyTO:function(cX){this.buddyTO=cX;
},createTab:function(cY){this.tabviewPage=new qx.ui.tabview.Page(this.trc(o,bj),xbGetQxIcon(bi));
this.tabviewPage.setLayout(new qx.ui.layout.VBox());
cY.add(this.tabviewPage);
var da=this.createTrackingMapControl();
this.tabviewPage.add(da);
var db=this.createConfigGroup();
this.tabviewPage.add(db);

if(!xbProperties.getBoolean(x,true)){da.setEnabled(false);
db.setEnabled(false);
this.saveConfigButton.setEnabled(false);
}return this.tabviewPage;
},setSelectedNoEvent:function(dc,dd){this.programmaticSetSelected=true;
dc.setSelection([dd]);
this.programmaticSetSelected=false;
},addListItemNoEvent:function(de,df){this.programmaticSetSelected=true;
de.add(df);
this.programmaticSetSelected=false;
},createConfigGroup:function(){var dh=new qx.ui.groupbox.GroupBox(this.trc(bq,z),xbGetQxIcon(br));
var dg=new qx.ui.layout.Grid();
dh.setLayout(dg);
var di=0;
var dj=1;
dg.setSpacingY(4);
dg.setSpacingX(6);
dg.setColumnAlign(0,cz,bn);
{this.saveConfigButton=new qx.ui.form.Button(this.trc(cs,bD),xbGetQxIcon(d));
this.saveConfigButton.addListener(cu,function(e){var dk=this.buddyTO.getDevice().getTrack(this.trackNameCurrentlyConfigured);
this.trackGui.askMsgBox(this.trc(cw,cE),this.trc(bp,ck),function(dl,dm){if(dl){this.__nW(dm);
var dn=dm.getDeviceId();
var dq=net.watchee.TrackDisplayInfo.KEY_TRACK_DISPLAY_INFO_PREFIX+dn;
var dp=dm.getTrackDisplayInfoDefault().toCSV();
this.trackGui.sendChangeAccountProperty(dn,dq,dp,function(dr,ds,dt){this.trackGui.infoMsgBox(this.trc(bh,ce),this.trc(Y,w,dr));
},this);
}},this,dk);
},this);
dh.add(this.saveConfigButton,{row:0,column:0});
this.saveConfigButton.setEnabled(true);
};
return dh;
},createTrackingMapControl:function(){var dE=new qx.ui.groupbox.GroupBox(this.trc(bq,cG),xbGetQxIcon(br));
var dI=new qx.ui.layout.Grid();
dE.setLayout(dI);
var dz=0;
var dA=1;
dI.setSpacingY(4);
dI.setSpacingX(6);
dI.setColumnAlign(0,cz,bn);
if(isWatchee){this.__nX(this.trc(cv,bY),C,net.watchee.IconDisplayInfo.RENDER_STATIC);
this.__nX(this.trc(cv,bG),co,net.watchee.IconDisplayInfo.RENDER_ARROW);
this.__nX(this.trc(cv,q),g,net.watchee.IconDisplayInfo.RENDER_STATIC);
}this.__nX(this.trc(cv,cK),X,net.watchee.IconDisplayInfo.RENDER_STATIC);
this.__nX(this.trc(cv,bb),cc,net.watchee.IconDisplayInfo.RENDER_STATIC);
this.__nX(this.trc(cv,bl),bV,net.watchee.IconDisplayInfo.RENDER_STATIC);
this.__nX(this.trc(cv,cT),t,net.watchee.IconDisplayInfo.RENDER_STATIC);
this.__nX(this.trc(cv,O),cO,net.watchee.IconDisplayInfo.RENDER_STATIC);
this.__nX(this.trc(cv,Q),cH,net.watchee.IconDisplayInfo.RENDER_STATIC);
this.__nX(this.trc(cv,cR),co,net.watchee.IconDisplayInfo.RENDER_ARROW,net.watchee.IconDisplayInfo.LABEL_TYPE_LOGINNAME);
this.__nX(this.trc(cv,bO),cC,net.watchee.IconDisplayInfo.RENDER_ARROW,net.watchee.IconDisplayInfo.LABEL_TYPE_ALIAS);
var dw=xbProperties.getStr(cM,null);

if(dw!=null){this.__nX(this.trc(cv,ch),cD,net.watchee.IconDisplayInfo.RENDER_ARROW,net.watchee.IconDisplayInfo.LABEL_TYPE_DYNAMIC);
}this.__nX(this.trc(cv,b),bu,net.watchee.IconDisplayInfo.RENDER_ARROW,net.watchee.IconDisplayInfo.LABEL_TYPE_TIME);

if(this.buddyTO.getDevice().isInputAnalog(1)){this.__nX(this.trc(cv,cg),cA,net.watchee.IconDisplayInfo.RENDER_IN1_ARROW_SPEEDDIR);
this.__nX(this.trc(cv,f),cB,net.watchee.IconDisplayInfo.RENDER_ARROW_IN1_BAR);
}
if(this.buddyTO.getDevice().isInputAnalog(2)){this.__nX(this.trc(cv,bR),bt,net.watchee.IconDisplayInfo.RENDER_IN2_ARROW_SPEEDDIR);
this.__nX(this.trc(cv,bJ),bo,net.watchee.IconDisplayInfo.RENDER_ARROW_IN2_BAR);
}this.__nX(this.trc(cv,R),bx,net.watchee.IconDisplayInfo.RENDER_STATIC_ARROW);
this.__nX(this.trc(cv,ca),bA,net.watchee.IconDisplayInfo.RENDER_STATIC_ARROW);
this.__nX(this.trc(cv,bQ),M,net.watchee.IconDisplayInfo.RENDER_STATIC_ARROW);
this.__nX(this.trc(cv,k),N,net.watchee.IconDisplayInfo.RENDER_STATIC_ARROW);
this.__nX(this.trc(cv,v),bz,net.watchee.IconDisplayInfo.RENDER_STATIC_ARROW);
this.__nX(this.trc(cv,K),bd,net.watchee.IconDisplayInfo.RENDER_STATIC_ARROW);
this.__nX(this.trc(cv,B),bU,net.watchee.IconDisplayInfo.RENDER_STATIC_ARROW);
this.__nX(this.trc(cv,bT),bX,net.watchee.IconDisplayInfo.RENDER_STATIC_ARROW);
this.__nX(this.trc(cv,p),y,net.watchee.IconDisplayInfo.RENDER_STATIC_ARROW);
this.__nX(this.trc(cv,cl),L,net.watchee.IconDisplayInfo.RENDER_STATIC_ARROW);
this.__nX(this.trc(cv,bM),cj,net.watchee.IconDisplayInfo.RENDER_STATIC_ARROW);
this.__nX(this.trc(cv,bW),E,net.watchee.IconDisplayInfo.RENDER_STATIC_ARROW);
this.__nX(this.trc(cv,bN),cQ,net.watchee.IconDisplayInfo.RENDER_STATIC_ARROW);
this.__nX(this.trc(cv,ci),T,net.watchee.IconDisplayInfo.RENDER_STATIC_ARROW);
this.__nX(this.trc(cv,bS),bE,net.watchee.IconDisplayInfo.RENDER_STATIC_ARROW);
this.__nX(this.trc(cv,cd),J,net.watchee.IconDisplayInfo.RENDER_STATIC_ARROW);
this.__nX(this.trc(cv,cI),h,net.watchee.IconDisplayInfo.RENDER_STATIC_ARROW);
this.__nX(this.trc(cv,be),bP,net.watchee.IconDisplayInfo.RENDER_STATIC_ARROW);
this.__nX(this.trc(cv,bK),cN,net.watchee.IconDisplayInfo.RENDER_STATIC_ARROW);
this.__nX(this.trc(cv,cL),a,net.watchee.IconDisplayInfo.RENDER_STATIC_ARROW);
this.__nX(this.trc(cv,by),bc,net.watchee.IconDisplayInfo.RENDER_STATIC_ARROW);
this.__nX(this.trc(cv,r),U,net.watchee.IconDisplayInfo.RENDER_STATIC_ARROW);
var dG=this.buddyTO.getDevice().getTrack(this.trackNameCurrentlyConfigured);
var dF=dG.getSegmentDisplayInfoDefault();
var dB=dG.getIconDisplayInfoDefault();
var dK=0;
this.comboColorSelectBox=new qx.ui.form.Button(cE);
this.comboColorSelectBox.setDecorator(null);
this.colorPopup=new qx.ui.control.ColorPopup();
this.colorPopup.exclude();
this.colorPopup.setValue(dG.getHexaColor());
this.comboColorSelectBox.addListener(cu,function(e){this.colorPopup.placeToWidget(this.comboColorSelectBox);
this.colorPopup.show();
},this);
this.colorPopup.addListener(bC,function(e){var dL=e.getData();
var dM=new Array();
dM.push(this.colorPopup.getRed());
dM.push(this.colorPopup.getGreen());
dM.push(this.colorPopup.getBlue());
var dN=u+qx.util.ColorUtil.rgbToHexString(dM);
this.comboColorSelectBox.setBackgroundColor(dN);
this.comboColorSelectBox.setLabel(dN);
},this);
this.iconSelectBox=new qx.ui.form.SelectBox();
this.log.info("trackHolderCurr.numIconsToShow()="+dG.getNumIconsToShow());
var dx=dG.getFifoGpsQueueMax();
var du=dG.getNumIconsToShow()>dx?dx:dG.getNumIconsToShow();
this.numIconsToShowSpinner=new qx.ui.form.Spinner(0,du,dx);
du=dF.getNumSegmentsToShow()>dx?dx:dF.getNumSegmentsToShow();
this.numSegmentsToShowSpinner=new qx.ui.form.Spinner(0,du,dx);
du=dF.getSegmentWidth()>20?20:dF.getSegmentWidth();
this.segmentWidthSpinner=new qx.ui.form.Spinner(0,du,20);
{this.trackNameLabel=new qx.ui.basic.Label(this.trc(ct,cn,dG.getNumGpsData()));
dE.add(this.trackNameLabel,{row:dK,column:dz});
this.setTrackNames();
this.displayComboCurrent();
this.trackSelectBox.addListener(c,function(e){if(this.programmaticSetSelected)return ;
var dP=(e.getData().length==0)?null:e.getData()[0];

if(dP==null)return ;
this.trackNameCurrentlyConfigured=dP.getUserData(bv);
var dO=this.buddyTO.getDevice().getTrack(this.trackNameCurrentlyConfigured);

if(dO==null){this.trackGui.errorMsgBox(this.trc(bs,bH,this.trackNameCurrentlyConfigured));
}this.__nV(dO);
},this);
dE.add(this.trackSelectBox,{row:dK,column:dA});
dK++;
};
{dE.add(new qx.ui.basic.Label(this.trc(ct,m)),{row:dK,column:dz});
var dv=this.iconHash.getValues();

for(var i=0,l=dv.length;i<l;i++){var dy=dv[i];
var dH=(dy.renderType==net.watchee.IconDisplayInfo.RENDER_STATIC||dy.renderType==net.watchee.IconDisplayInfo.RENDER_STATIC_ARROW)?net.watchee.STATIC_ICON_URL_PATH:net.watchee.DYNAMIC_ICON_URL_PATH;
var dC=new qx.ui.form.ListItem(dy.label,dH+dy.iconName);
dC.setUserData(cx,dy.iconName);
this.iconSelectBox.add(dC);
}var dy=this.__nY(dB);

if(dy!=null){track.util.GuiUtils.selectByUserData(this.iconSelectBox,cx,dy.iconName);
}dE.add(this.iconSelectBox,{row:dK,column:dA});
dK++;
};
{var dJ=new qx.ui.form.Button(n);
dJ.addListener(cu,function(e){this.colorPopup.placeToWidget(dJ);
this.colorPopup.show();
});
dE.add(new qx.ui.basic.Label(this.trc(bk,cb)),{row:dK,column:dz});
this.comboColorSelectBox.setBackgroundColor(dF.getSegmentColor());
dE.add(this.comboColorSelectBox,{row:dK,column:dA});
dK++;
};
{dE.add(new qx.ui.basic.Label(this.trc(cp,bI)),{row:dK,column:dz});
dE.add(this.numIconsToShowSpinner,{row:dK,column:dA});
dK++;
};
{dE.add(new qx.ui.basic.Label(this.trc(cp,bL)),{row:dK,column:dz});
dE.add(this.numSegmentsToShowSpinner,{row:dK,column:dA});
dK++;
};
{dE.add(new qx.ui.basic.Label(this.trc(cp,bm)),{row:dK,column:dz});
dE.add(this.segmentWidthSpinner,{row:dK,column:dA});
dK++;
};
this.removeButton=null;

if(this.hasRemoveButton){this.removeButton=new qx.ui.form.Button(this.trc(cs,cP),xbGetQxIcon(S));
this.removeButton.addListener(cu,function(e){var dQ=this.buddyTO.getDevice().getTrack(this.trackNameCurrentlyConfigured);
this.trackGui.askMsgBox(this.trc(cw,s),this.trc(bp,bg,this.trackNameCurrentlyConfigured,dQ.getNumGpsData()),function(dR,dS){if(dR){this.removeTrack(dQ);
}},this,dQ);
},this);
dE.add(this.removeButton,{row:dK,column:dz});
this.removeButton.setEnabled(dG.isDisplayedOnMap());
}var dD=new qx.ui.container.Composite(new qx.ui.layout.HBox());
dE.add(dD,{row:dK,column:dA});
{this.hideButton=new qx.ui.form.Button(this.trc(cs,P),xbGetQxIcon(G));
this.hideButton.addListener(cu,function(e){try{var dT=this.buddyTO.getDevice().getTrack(this.trackNameCurrentlyConfigured);
this.trackGui.startAjaxAnimator(this.trc(bw,A,dT.getTrackName()),10000);
this.hideTrack(dT);
this.trackGui.stopAjaxAnimator();
}catch(dU){this.trackGui.errorMsgBox(this.trc(bs,cy),dU);
}},this);
dD.add(this.hideButton);
this.hideButton.setEnabled(dG.isDisplayedOnMap());
};
{this.showTrackButton=new qx.ui.form.Button(this.trc(cs,W),xbGetQxIcon(cS));
this.showTrackButton.setAlignX(H);
this.showTrackButton.addListener(cu,function(e){try{var dV=this.buddyTO.getDevice().getTrack(this.trackNameCurrentlyConfigured);

if(dV.fifoGpsQueue.size()>0)this.trackGui.startAjaxAnimator(this.trc(bw,cJ,dV.getTrackName()),40000);
this.__nW(dV);
dV.drawHistoryLine();
var dX=dV.getFifoGpsQueue().getArray();

for(var i=0,l=dX.length;i<l;i++){if(dX[i]._poiReportTableRowIndex!==undefined)delete dX[i]._poiReportTableRowIndex;
this.trackGui.addPhotoToPhotoGallery(dV,dX[i]);
}var dW=null;
dV.drawPositionIcons(function(e){this.trackGui.stopAjaxAnimator();
this.hideButton.setEnabled(dV.isDisplayedOnMap());
},this,dW);
}catch(dY){this.trackGui.errorMsgBox(this.trc(bw,cy),dY);
}},this);
dD.add(this.showTrackButton);
this.updateShowTrackButton(dG);
};
return dE;
},__nV:function(ea){var eg=false;

if(ea.isCurrentTrack()){eg=this.buddyTO.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_GPS);
this.saveConfigButton.setEnabled(true);
}else{eg=this.buddyTO.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_GPS_HISTORY);
this.saveConfigButton.setEnabled(false);
}var ec=ea.getSegmentDisplayInfoDefault();
var ef=ea.getIconDisplayInfoDefault();
this.numIconsToShowSpinner.setMaximum(ea.getFifoGpsQueueMax());
this.numSegmentsToShowSpinner.setMaximum(ea.getFifoGpsQueueMax());
var ee=false;

if(eg){if(!ea.locationsAreLoaded()&&!ea.isCurrentTrack()){this.trackNameLabel.setValue(this.trc(ct,V));
ee=true;
this.trackGui.getTrackLocations(this.buddyTO.getLoginName(),ea.getTrackName());
}else{this.trackNameLabel.setValue(this.trc(ct,cn,ea.getNumGpsData()));
}}else{this.trackNameLabel.setValue(this.trc(ct,bF));
}this.log.info("changeSelected to "+ea.getTrackName());
var ed=this.__nY(ef);

if(ed!=null){track.util.GuiUtils.selectByLabel(this.iconSelectBox,ed.label);
}var eb=ec.getSegmentColor();
this.comboColorSelectBox.setBackgroundColor(eb);
this.colorPopup.setValue(eb);
this.numSegmentsToShowSpinner.setValue(ec.getNumSegmentsToShow());
this.segmentWidthSpinner.setValue(ec.getSegmentWidth());
this.numIconsToShowSpinner.setValue(ea.getNumIconsToShow());

if(this.hideButton!=null){this.hideButton.setEnabled(ea.isDisplayedOnMap());
}
if(this.removeButton!=null){this.removeButton.setEnabled(!ea.isCurrentTrack());
}this.updateShowTrackButton(ea,ee);
},__nW:function(eh){var ei=eh.getSegmentDisplayInfoDefault();
ei.setNumSegmentsToShow(this.numSegmentsToShowSpinner.getValue());
ei.setSegmentWidth(this.segmentWidthSpinner.getValue());
eh.setNumIconsToShow(this.numIconsToShowSpinner.getValue());
eh.setSegmentColor(this.comboColorSelectBox.getBackgroundColor());
var ek=this.iconSelectBox.getSelection()[0].getLabel();
var ej=this.iconHash.get(ek);
eh.setIconNameAndFire(ej.iconName,ej.renderType,ej.labelType);
},__nX:function(el,em,en,eo){var ep={label:el,iconName:em,renderType:en||net.watchee.IconDisplayInfo.RENDER_STATIC,labelType:eo||net.watchee.IconDisplayInfo.LABEL_TYPE_LOGINNAME};
this.iconHash.put(el,ep);
},__nY:function(eq){if(eq===undefined||eq==null)return null;
var et=eq.getIconName();
var ev=eq.getRenderType();
var ew=eq.getLabelType();
var ey=this.iconHash.getValues();
var es=null;

for(var i=0,l=ey.length;i<l;i++){var eu=ey[i];

if(i==0)es=eu;
if(et.indexOf(I)==0){var ez=et.substring(0,et.length-cm.length);

if(eu.iconName.length<=cm.length)continue;
var er=eu.iconName.substring(0,eu.iconName.length-cm.length);

if(er==ez)return eu;
continue;
}
if(et==eu.iconName)return eu;

if(eu.renderType!=ev)continue;

if(eu.renderType==net.watchee.IconDisplayInfo.RENDER_ARROW&&eu.labelType!=ew)continue;
if(eu.renderType==net.watchee.IconDisplayInfo.RENDER_ARROW_TIME||eu.renderType==net.watchee.IconDisplayInfo.RENDER_ARROW&&eu.labelType==net.watchee.IconDisplayInfo.LABEL_TYPE_TIME){eu.iconName=bu;
return eu;
}else if(eu.renderType==net.watchee.IconDisplayInfo.RENDER_ARROW&&eu.labelType==net.watchee.IconDisplayInfo.LABEL_TYPE_LOGINNAME){eu.iconName=co;
return eu;
}else if(eu.renderType==net.watchee.IconDisplayInfo.RENDER_ARROW&&eu.labelType==net.watchee.IconDisplayInfo.LABEL_TYPE_ALIAS){eu.iconName=cC;
return eu;
}else if(eu.renderType==net.watchee.IconDisplayInfo.RENDER_ARROW&&eu.labelType==net.watchee.IconDisplayInfo.LABEL_TYPE_DYNAMIC){eu.iconName=cD;
return eu;
}else if(eu.renderType==net.watchee.IconDisplayInfo.RENDER_IN1_ARROW_SPEEDDIR){eu.iconName=cA;
return eu;
}else if(eu.renderType==net.watchee.IconDisplayInfo.RENDER_ARROW_IN1_BAR){eu.iconName=cB;
return eu;
}else if(eu.renderType==net.watchee.IconDisplayInfo.RENDER_IN2_ARROW_SPEEDDIR){eu.iconName=bt;
return eu;
}else if(eu.renderType==net.watchee.IconDisplayInfo.RENDER_ARROW_IN2_BAR){eu.iconName=bo;
return eu;
}}return es;
},trackDataLoaded:function(eA){if(eA.getTrackName()==this.trackNameCurrentlyConfigured){if(org.xmlBlaster.util.isDefined(this.trackNameLabel))this.trackNameLabel.setValue(this.trc(cF,cn,eA.getNumGpsData()));
}this.updateShowTrackButton(eA);
},displayComboCurrent:function(){if(org.xmlBlaster.util.isDefined(this.trackSelectBox)){var eC=track.util.GuiUtils.findListItemByModel(this.trackSelectBox,net.watchee.Device.CUR_TRACK_KEY);
if(eC!=null){this.setSelectedNoEvent(this.trackSelectBox,eC);
var eB=this.buddyTO.getDevice().getCurrentTrack();
this.trackNameCurrentlyConfigured=eB.getTrackName();
this.updateShowTrackButton(eB);
return true;
}}return false;
},updateShowTrackButton:function(eD,eE){if(eD==null)return;

if(!org.xmlBlaster.util.isDefined(this.showTrackButton))return;
var eE=org.xmlBlaster.util.toBoolean(eE,false);

if(eE){this.showTrackButton.setEnabled(false);
return;
}
if(eD.isCurrentTrack()){var eF=this.buddyTO.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_GPS);
this.showTrackButton.setEnabled(eF);
var eG=eF?new qx.ui.tooltip.ToolTip(this.trc(cq,cf),xbGetQxIcon(cr)):new qx.ui.tooltip.ToolTip(this.trc(cq,F),xbGetQxIcon(cr));
eG.setRich(true);
eG.setShowTimeout(50);
this.showTrackButton.setToolTip(eG);
}else{var eH=this.buddyTO.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_GPS_HISTORY);
this.showTrackButton.setEnabled(eH);
var eG=eH?new qx.ui.tooltip.ToolTip(this.trc(cq,ba),xbGetQxIcon(cr)):new qx.ui.tooltip.ToolTip(this.trc(cq,D),xbGetQxIcon(cr));
eG.setRich(true);
eG.setShowTimeout(50);
this.showTrackButton.setToolTip(eG);
}},hideAllHistoryTracks:function(){var eI=this.buddyTO.getDevice().getTracks();

for(var i in eI){this.hideTrack(eI[i]);
}},hideCurrentTrack:function(){this.hideTrack(this.buddyTO.getDevice().getCurrentTrack());
},hideTrack:function(eJ){if(eJ==null)return;
eJ.clearMappingData(false);
this.hideButton.setEnabled(eJ.isDisplayedOnMap());
var eK=eJ.getFifoGpsQueue().getArray();

for(var i=0,l=eK.length;i<l;i++){this.trackGui.removePhotoFromPhotoGallery(eK[i]);
}},removeTrack:function(eL){if(eL==null)return;
eL.getDevice().removeTrack(eL.getTrackName());
this.trackGui.sendRemoveTrack(this.buddyTO.getLoginName(),eL.getTrackName());
},makeTrackCurrent:function(eM){if(!org.xmlBlaster.util.isDefined(this.trackSelectBox))return;

if(!org.xmlBlaster.util.isFilled(eM))eM=net.watchee.Device.CUR_TRACK_KEY;
var eN=track.util.GuiUtils.findListItemByModel(this.trackSelectBox,eM);
if(eN!=null){this.trackSelectBox.setSelection([eN]);
}},setTrackNames:function(){var eV=this.buddyTO.getDevice().getTracks();
var eO=null;

if(this.trackSelectBox){var eP=this.trackSelectBox.getSelection()[0];
eO=eP.getUserData(bv);
this.trackSelectBox.removeAll();
}else{this.trackSelectBox=new qx.ui.form.SelectBox();
}var eS=null;

for(var i=0;i<eV.length;i++){var j=0;

if(i>0)j=eV.length-i;
var eT=eV[j];
var eQ=eT.getTrackName();

if(eQ==net.watchee.Device.CUR_TRACK_KEY)eQ=this.trc(cF,bB);
var eW=null;
var eU=eT.getTrackName();
var eR=new qx.ui.form.ListItem(eQ,eW,eU);

if(eO==eT.getTrackName())eS=eR;
eR.setUserData(bv,eT.getTrackName());
this.addListItemNoEvent(this.trackSelectBox,eR);
}
if(eS!=null)this.setSelectedNoEvent(this.trackSelectBox,eS);
}},destruct:function(){this.trackNameCurrentlyConfigured=null;
this._disposeFields();
this._disposeObjects();
}});
})();
(function(){var b="qx.ui.form.IColorForm",a="qx.event.type.Data";
qx.Interface.define(b,{events:{"changeValue":a},members:{setValue:function(c){return arguments.length==1;
},resetValue:function(){},getValue:function(){}}});
})();
(function(){var m="current-preview",l="execute",k="selected-preview",h="Number",g="preview-pane",f="selector-button",d="colorselector-cancelbutton",c="auto-button",b="colorselector-okbutton",a="mousedown",X="teal",W="maroon",V="qx.ui.control.ColorPopup",U="#666",T="__od",S="changeValue",R="#333",Q="#000",P="yellow",O="changeGreen",t="colorpopup",u="_applyValue",r="blue",s="changeRed",p="field#",q="__oc",n="#CCC",o="Color Selector",v="changeVisibility",w="recent",D="changeBlue",B="mouseover",H="Cancel",F="#FFF",K="right",J="Open ColorSelector",y="mouseout",N="#999",M="Automatic",L="Basic Colors",x="Preview (Old/New)",z="visible",A="Recent Colors",C="OK",E="field",G="green",I="red";
qx.Class.define(V,{extend:qx.ui.popup.Popup,implement:[qx.ui.form.IColorForm],construct:function(){qx.ui.popup.Popup.call(this);
this.setLayout(new qx.ui.layout.VBox(5));
this._createChildControl(c);
this._createBoxes();
this._createChildControl(g);
this._createChildControl(f);
this.addListener(v,this._onChangeVisibility,this);
},properties:{appearance:{refine:true,init:t},value:{nullable:true,apply:u,event:S},red:{check:h,init:null,nullable:true,event:s},green:{check:h,init:null,nullable:true,event:O},blue:{check:h,init:null,nullable:true,event:D}},members:{__oa:1e5,__ob:null,__oc:null,__od:null,__oe:w,__of:12,_createChildControlImpl:function(Y,ba){var bb;

switch(Y){case E:bb=new qx.ui.core.Widget;
bb.addListener(a,this._onFieldMouseDown,this);
bb.addListener(B,this._onFieldMouseOver,this);
bb.addListener(y,this._onFieldMouseOut,this);
break;
case c:bb=new qx.ui.form.Button(this.tr(M));
bb.setAllowStretchX(true);
bb.addListener(l,this._onAutomaticBtnExecute,this);
this.add(bb);
break;
case f:bb=new qx.ui.form.Button(this.tr(J));
bb.addListener(l,this._onSelectorButtonExecute,this);
this.add(bb);
break;
case g:bb=new qx.ui.groupbox.GroupBox(this.tr(x));
bb.setLayout(new qx.ui.layout.HBox);
bb.add(this._createChildControl(k,true),{flex:1});
bb.add(this._createChildControl(m,true),{flex:1});
this.add(bb);
break;
case k:bb=new qx.ui.container.Composite(new qx.ui.layout.Basic);
break;
case m:bb=new qx.ui.container.Composite(new qx.ui.layout.Basic);
break;
case b:bb=new qx.ui.form.Button(this.tr(C));
bb.addListener(l,this._onColorSelectorOk,this);
break;
case d:bb=new qx.ui.form.Button(this.tr(H));
bb.addListener(l,this._onColorSelectorCancel,this);
break;
}return bb||qx.ui.popup.Popup.prototype._createChildControlImpl.call(this,Y);
},_createBoxes:function(){this.__ob={};
var bd=this._tables;
var bg,bc,be;
var j=0;

for(var bf in bd){bg=bd[bf];
bc=new qx.ui.groupbox.GroupBox(bg.label);
bc.setLayout(new qx.ui.layout.HBox);
this.__ob[bf]=bc;
this.add(bc);

for(var i=0;i<this.__of;i++){be=this.getChildControl(p+(j++));
be.setBackgroundColor(bg.values[i]||null);
bc.add(be);
}}},_createColorSelector:function(){if(this.__od){return;
}var bh=new qx.ui.window.Window(this.tr(o));
this.__oc=bh;
bh.setLayout(new qx.ui.layout.VBox(16));
bh.setResizable(false);
bh.moveTo(20,20);
this.__od=new qx.ui.control.ColorSelector;
bh.add(this.__od);
var bi=new qx.ui.container.Composite(new qx.ui.layout.HBox(8,K));
bh.add(bi);
var bk=this._createChildControl(d);
var bj=this._createChildControl(b);
bi.add(bk);
bi.add(bj);
},_applyValue:function(bl,bm){if(bl===null){this.setRed(null);
this.setGreen(null);
this.setBlue(null);
}else{var bn=qx.util.ColorUtil.stringToRgb(bl);
this.setRed(bn[0]);
this.setGreen(bn[1]);
this.setBlue(bn[2]);
}this.getChildControl(k).setBackgroundColor(bl);
this._rotatePreviousColors();
},_rotatePreviousColors:function(){if(!this._tables){return;
}var bq=this._tables[this.__oe].values;
var br=this.__ob[this.__oe];

if(!bq){return;
}var bs=this.getValue();

if(!bs){return;
}var bp=bq.indexOf(bs);

if(bp!=-1){qx.lang.Array.removeAt(bq,bp);
}else if(bq.length==this.__of){bq.shift();
}bq.push(bs);
var bo=br.getChildren();

for(var i=0;i<bo.length;i++){bo[i].setBackgroundColor(bq[i]||null);
}},_onFieldMouseDown:function(e){var bt=this.getChildControl(m).getBackgroundColor();
this.setValue(bt);

if(bt){this.hide();
}},_onFieldMouseOver:function(e){this.getChildControl(m).setBackgroundColor(e.getTarget().getBackgroundColor());
},_onFieldMouseOut:function(e){var bx=this.getRed();
var bw=this.getGreen();
var bu=this.getBlue();
var bv=null;

if(bx!==null||bw!==null||bu!==null){var bv=qx.util.ColorUtil.rgbToRgbString([bx,bw,bu]);
}this.getChildControl(m).setBackgroundColor(bv);
},_onAutomaticBtnExecute:function(){this.setValue(null);
this.hide();
},_onSelectorButtonExecute:function(){this._createColorSelector();
this.exclude();
var bA=this.getRed();
var bz=this.getGreen();
var by=this.getBlue();

if(bA===null||bz===null||by===null){bA=255;
bz=255;
by=255;
}this.__od.setRed(bA);
this.__od.setGreen(bz);
this.__od.setBlue(by);
this.__oc.open();
},_onColorSelectorOk:function(){var bB=this.__od;
this.setValue(qx.util.ColorUtil.rgbToRgbString([bB.getRed(),bB.getGreen(),bB.getBlue()]));
this.__oc.close();
},_onColorSelectorCancel:function(){this.__oc.close();
},_onChangeVisibility:function(e){if(this.getVisibility()==z){var bF=this.getRed();
var bE=this.getGreen();
var bC=this.getBlue();
var bD=null;

if(bF!==null||bE!==null||bC!==null){var bD=qx.util.ColorUtil.rgbToRgbString([bF,bE,bC]);
}this.getChildControl(k).setBackgroundColor(bD);
this.getChildControl(m).setBackgroundColor(bD);
}},_tables:{core:{label:L,values:[Q,R,U,N,n,F,I,G,r,P,X,W]},recent:{label:A,values:[]}}},destruct:function(){this._disposeObjects(q,T);
this._tables=this.__ob=null;
}});
})();
(function(){var a="qx.ui.layout.Basic";
qx.Class.define(a,{extend:qx.ui.layout.Abstract,members:{verifyLayoutProperty:null,renderLayout:function(b,c){var g=this._getLayoutChildren();
var d,f,e,h,top;
for(var i=0,l=g.length;i<l;i++){d=g[i];
f=d.getSizeHint();
e=d.getLayoutProperties();
h=(e.left||0)+d.getMarginLeft();
top=(e.top||0)+d.getMarginTop();
d.renderLayout(h,top,f.width,f.height);
}},_computeSizeHint:function(){var p=this._getLayoutChildren();
var m,r,n;
var q=0,o=0;
var j,k;
for(var i=0,l=p.length;i<l;i++){m=p[i];
r=m.getSizeHint();
n=m.getLayoutProperties();
j=r.width+(n.left||0)+m.getMarginLeft()+m.getMarginRight();
k=r.height+(n.top||0)+m.getMarginTop()+m.getMarginBottom();

if(j>q){q=j;
}
if(k>o){o=k;
}}return {width:q,height:o};
}}});
})();
(function(){var by="brightness-handle",bx="hue-saturation-handle",bw="hsbSpinner",bv="rgbSpinner",bu="changeValue",bt="hexField",bs="hueSaturationField",br="brightness-field",bq="mousedown",bp="rgb-spinner-red",be="preview-content-old",bd="rgb-spinner-green",bc="brightnessField",bb="hue-saturation-field",ba="hsb-spinner-brightness",Y="preview-content-new",X="hue-saturation-pane",W="rgb-spinner-blue",V="hsb-spinner-hue",U="hsb-spinner-saturation",bF="hex-field",bG="brightnessModifier",bD="blueModifier",bE="saturationModifier",bB="middle",bC="Number",bz="#",bA="redModifier",bH="greenModifier",bI="hueModifier",bi="Integer",bh="brightness-pane",bk="control-pane",bj="preset-grid",bm="mouseup",bl="preset-field-set",bo="qx.event.type.Event",bn="mousemove",bg="hex-field-composite",bf="y",a="rgb-spinner-composite",b="hsb-spinner-composite",c="control-bar",d="mousewheel",f="visual-pane",g="input-field-set",h="preview-field-set",k="black",l="_applyGreen",m="#333",bM="aqua",bL="colorbucket",bK="qx.event.type.Data",bJ="Hex",bQ="#BBB",bP="decoration/colorselector/brightness-handle.gif",bO="Visual",bN="_applySaturation",bS="Preview (Old/New)",bR="FFFFFF",E="decoration/colorselector/brightness-field.png",F="white",C="orange",D="x",I="_applyRed",J="_applyBlue",G="maroon",H="Presets",A="_applyBrightness",B="#999",u="purple",t="red",w="blue",v="_applyHue",q="decoration/colorselector/huesaturation-handle.gif",p="colorselector",s="qx.ui.control.ColorSelector",r="lime",o="#EEE",n="olive",O="RGB",P="decoration/colorselector/huesaturation-field.jpg",Q="navy",R="teal",K="green",L="yellow",M="#666",N="fuchsia",S="Details",T="",z="colorbucket#",y="appear",x="HSB";
qx.Class.define(s,{extend:qx.ui.core.Widget,implement:[qx.ui.form.IColorForm],construct:function(){qx.ui.core.Widget.call(this);
this._setLayout(new qx.ui.layout.VBox());
this._createChildControl(c);
this.addListener(y,this._onAppear,this);
},events:{"dialogok":bo,"dialogcancel":bo,"changeValue":bK},properties:{appearance:{refine:true,init:p},red:{check:bi,init:255,apply:I},green:{check:bi,init:255,apply:l},blue:{check:bi,init:255,apply:J},hue:{check:bC,init:0,apply:v},saturation:{check:bC,init:0,apply:bN},brightness:{check:bC,init:100,apply:A}},members:{__og:null,__oh:[G,t,C,L,n,u,N,r,K,Q,w,bM,R,k,m,M,B,bQ,o,F],__oi:T,__oj:0,__ok:0,__ol:0,__ma:true,__om:false,_createChildControlImpl:function(bT,bU){var bV;

switch(bT){case c:bV=new qx.ui.container.Composite(new qx.ui.layout.HBox(10));
bV.add(this.getChildControl(bk));
bV.add(this.getChildControl(f));
this._add(bV);
break;
case f:bV=new qx.ui.groupbox.GroupBox(this.tr(bO));
bV.setLayout(new qx.ui.layout.HBox(10));
bV.add(this.getChildControl(X));
bV.add(this.getChildControl(bh));
break;
case bk:bV=new qx.ui.container.Composite(new qx.ui.layout.VBox(12));
bV.add(this.getChildControl(bl));
bV.add(this.getChildControl(g));
bV.add(this.getChildControl(h),{flex:1});
break;
case X:bV=new qx.ui.container.Composite(new qx.ui.layout.Canvas());
bV.setAllowGrowY(false);
bV.addListener(d,this._onHueSaturationPaneMouseWheel,this);
bV.add(this.getChildControl(bb));
bV.add(this.getChildControl(bx),{left:0,top:256});
break;
case bb:bV=new qx.ui.basic.Image(P);
bV.addListener(bq,this._onHueSaturationFieldMouseDown,this);
break;
case bx:bV=new qx.ui.basic.Image(q);
bV.addListener(bq,this._onHueSaturationFieldMouseDown,this);
bV.addListener(bm,this._onHueSaturationHandleMouseUp,this);
bV.addListener(bn,this._onHueSaturationHandleMouseMove,this);
break;
case bh:bV=new qx.ui.container.Composite(new qx.ui.layout.Canvas());
bV.setAllowGrowY(false);
bV.addListener(d,this._onBrightnessPaneMouseWheel,this);
bV.add(this.getChildControl(br));
bV.add(this.getChildControl(by));
break;
case br:bV=new qx.ui.basic.Image(E);
bV.addListener(bq,this._onBrightnessFieldMouseDown,this);
break;
case by:bV=new qx.ui.basic.Image(bP);
bV.addListener(bq,this._onBrightnessHandleMouseDown,this);
bV.addListener(bm,this._onBrightnessHandleMouseUp,this);
bV.addListener(bn,this._onBrightnessHandleMouseMove,this);
break;
case bl:bV=new qx.ui.groupbox.GroupBox(this.tr(H));
bV.setLayout(new qx.ui.layout.Grow());
bV.add(this.getChildControl(bj));
break;
case bL:bV=new qx.ui.core.Widget();
bV.addListener(bq,this._onColorFieldClick,this);
break;
case bj:cb=new qx.ui.layout.Grid(3,3);
bV=new qx.ui.container.Composite(cb);
var cc;
var ca;

for(var i=0;i<2;i++){for(var j=0;j<10;j++){ca=i*10+j;
cc=this.getChildControl(z+ca);
cc.setBackgroundColor(this.__oh[ca]);
bV.add(cc,{column:j,row:i});
}}break;
case g:bV=new qx.ui.groupbox.GroupBox(this.tr(S));
var cb=new qx.ui.layout.VBox();
cb.setSpacing(10);
bV.setLayout(cb);
bV.add(this.getChildControl(bg));
bV.add(this.getChildControl(a));
bV.add(this.getChildControl(b));
break;
case h:bV=new qx.ui.groupbox.GroupBox(this.tr(bS));
var cb=new qx.ui.layout.HBox(10);
bV.setLayout(cb);
bV.add(this.getChildControl(be),{flex:1});
bV.add(this.getChildControl(Y),{flex:1});
break;
case bg:var bY=new qx.ui.layout.HBox(4);
bY.setAlignY(bB);
bV=new qx.ui.container.Composite(bY);
var ce=new qx.ui.basic.Label(this.tr(bJ));
bV.add(ce);
var cd=new qx.ui.basic.Label(bz);
bV.add(cd);
bV.add(this.getChildControl(bF));
break;
case bF:bV=new qx.ui.form.TextField(bR);
bV.setMaxLength(6);
bV.setFilter(/[0-9A-Fa-f]/);
bV.setWidth(55);
bV.addListener(bu,this._onHexFieldChange,this);
break;
case a:var bY=new qx.ui.layout.HBox(4);
bY.setAlignY(bB);
bV=new qx.ui.container.Composite(bY);
var bW=new qx.ui.basic.Label(this.tr(O));
bW.setWidth(25);
bV.add(bW);
bV.add(this.getChildControl(bp));
bV.add(this.getChildControl(bd));
bV.add(this.getChildControl(W));
break;
case bp:bV=new qx.ui.form.Spinner(0,255,255);
bV.setWidth(50);
bV.addListener(bu,this._setRedFromSpinner,this);
break;
case bd:bV=new qx.ui.form.Spinner(0,255,255);
bV.setWidth(50);
bV.addListener(bu,this._setGreenFromSpinner,this);
break;
case W:bV=new qx.ui.form.Spinner(0,255,255);
bV.setWidth(50);
bV.addListener(bu,this._setBlueFromSpinner,this);
break;
case b:var bY=new qx.ui.layout.HBox(4);
bY.setAlignY(bB);
bV=new qx.ui.container.Composite(bY);
var bX=new qx.ui.basic.Label(this.tr(x));
bX.setWidth(25);
bV.add(bX);
bV.add(this.getChildControl(V));
bV.add(this.getChildControl(U));
bV.add(this.getChildControl(ba));
break;
case V:bV=new qx.ui.form.Spinner(0,0,360);
bV.setWidth(50);
bV.addListener(bu,this._setHueFromSpinner,this);
break;
case U:bV=new qx.ui.form.Spinner(0,0,100);
bV.setWidth(50);
bV.addListener(bu,this._setSaturationFromSpinner,this);
break;
case ba:bV=new qx.ui.form.Spinner(0,100,100);
bV.setWidth(50);
bV.addListener(bu,this._setBrightnessFromSpinner,this);
break;
case be:bV=new qx.ui.core.Widget();
break;
case Y:bV=new qx.ui.core.Widget();
break;
}return bV||qx.ui.core.Widget.prototype._createChildControlImpl.call(this,bT);
},setValue:function(cf){var cg;

if(cf==null){this.__ma=true;
cg=[255,255,255];
}else{cg=qx.util.ColorUtil.stringToRgb(cf);
this.__ma=false;
}this.__om=true;
this.setRed(cg[0]);
this.setGreen(cg[1]);
this.__om=false;
this.setBlue(cg[2]);
},getValue:function(){return this.__ma?null:bz+qx.util.ColorUtil.rgbToHexString([this.getRed(),this.getGreen(),this.getBlue()]);
},resetValue:function(){this.__ma=true;
this.__om=true;
this.setRed(255);
this.setGreen(255);
this.__om=false;
this.setBlue(255);
},__mf:function(){if(!this.__om){this.__ma=false;
this.fireDataEvent(bu,this.getValue());
}},_applyRed:function(ch,ci){if(this.__og===null){this.__og=bA;
}
if(this.__og!==bv){this.getChildControl(bp).setValue(ch);
}
if(this.__og!==bt){this._setHexFromRgb();
}
switch(this.__og){case bv:case bt:case bA:this._setHueFromRgb();
}this._setPreviewFromRgb();
this.__mf();

if(this.__og===bA){this.__og=null;
}},_applyGreen:function(cj,ck){if(this.__og===null){this.__og=bH;
}
if(this.__og!==bv){this.getChildControl(bd).setValue(cj);
}
if(this.__og!==bt){this._setHexFromRgb();
}
switch(this.__og){case bv:case bt:case bH:this._setHueFromRgb();
}this._setPreviewFromRgb();
this.__mf();

if(this.__og===bH){this.__og=null;
}},_applyBlue:function(cl,cm){if(this.__og===null){this.__og=bD;
}
if(this.__og!==bv){this.getChildControl(W).setValue(cl);
}
if(this.__og!==bt){this._setHexFromRgb();
}
switch(this.__og){case bv:case bt:case bD:this._setHueFromRgb();
}this._setPreviewFromRgb();
this.__mf();

if(this.__og===bD){this.__og=null;
}},_applyHue:function(cn,co){if(this.__og===null){this.__og=bI;
}
if(this.__og!==bw){this.getChildControl(V).setValue(cn);
}
if(this.__og!==bs){if(this.getChildControl(bx).getBounds()){this.getChildControl(bx).setDomLeft(Math.round(cn/1.40625)+this.getChildControl(X).getPaddingLeft());
}else{this.getChildControl(bx).setLayoutProperties({left:Math.round(cn/1.40625)});
}}
switch(this.__og){case bw:case bs:case bI:this._setRgbFromHue();
}this._setBrightnessGradiant();

if(this.__og===bI){this.__og=null;
}},_applySaturation:function(cp,cq){if(this.__og===null){this.__og=bE;
}
if(this.__og!==bw){this.getChildControl(U).setValue(cp);
}
if(this.__og!==bs){this._setBrightnessGradiant();

if(this.getChildControl(bx).getBounds()){this.getChildControl(bx).setDomTop(256-Math.round(cp*2.56)+this.getChildControl(X).getPaddingTop());
}else{this.getChildControl(bx).setLayoutProperties({top:256-Math.round(cp*2.56)});
}}
switch(this.__og){case bw:case bs:case bE:this._setRgbFromHue();
}
if(this.__og===bE){this.__og=null;
}},_applyBrightness:function(cr,cs){if(this.__og===null){this.__og=bG;
}
if(this.__og!==bw){this.getChildControl(ba).setValue(cr);
}
if(this.__og!==bc){var ct=256-Math.round(cr*2.56);

if(this.getChildControl(by).getBounds()){this.getChildControl(by).setDomTop(ct+this.getChildControl(bh).getPaddingTop());
}else{this.getChildControl(by).setLayoutProperties({top:ct});
}}
switch(this.__og){case bw:case bc:case bG:this._setRgbFromHue();
}
if(this.__og===bG){this.__og=null;
}},_onBrightnessHandleMouseDown:function(e){this.getChildControl(by).capture();
this.__oi=by;
var cw=this.getChildControl(br).getContainerLocation();
var cv=this.getChildControl(by).getContainerLocation();
var cu=this.getChildControl(br).getBounds();
this.__oj=cw.top+(e.getDocumentTop()-cv.top)-cu.top;
e.stopPropagation();
},_onBrightnessHandleMouseUp:function(e){this.getChildControl(by).releaseCapture();
this.__oi=null;
},_onBrightnessHandleMouseMove:function(e){if(this.__oi===by){this._setBrightnessOnFieldEvent(e);
e.stopPropagation();
}},_onBrightnessFieldMouseDown:function(e){var location=this.getChildControl(br).getContainerLocation();
var cx=this.getChildControl(by).getBounds();
this.__oj=location.top+(cx.height/2);
this._setBrightnessOnFieldEvent(e);
this.getChildControl(by).capture();
this.__oi=by;
},_onBrightnessPaneMouseWheel:function(e){this.setBrightness(qx.lang.Number.limit(this.getBrightness()-e.getWheelDelta(bf),0,100));
e.stop();
},_setBrightnessOnFieldEvent:function(e){var cy=qx.lang.Number.limit(e.getDocumentTop()-this.__oj,0,256);
this.__og=bc;

if(this.getChildControl(by).getBounds()){this.getChildControl(by).setDomTop(cy);
}else{this.getChildControl(by).setLayoutProperties({top:cy});
}this.setBrightness(100-Math.round(cy/2.56));
this.__og=null;
},_onHueSaturationHandleMouseUp:function(e){if(this.__oi){e.stopPropagation();
this.getChildControl(bx).releaseCapture();
this.__oi=null;
}},_onHueSaturationHandleMouseMove:function(e){if(this.__oi===bx){this._setHueSaturationOnFieldEvent(e);
e.stopPropagation();
}},_onHueSaturationFieldMouseDown:function(e){var location=this.getChildControl(bb).getContainerLocation();
var cz=this.getChildControl(bx).getBounds();
var cA=this.getChildControl(bb).getBounds();
this.__ok=location.top+(cz.height/2)-cA.top;
this.__ol=location.left+(cz.width/2)-cA.left;
this._setHueSaturationOnFieldEvent(e);
this.getChildControl(bx).capture();
this.__oi=bx;
},_onHueSaturationPaneMouseWheel:function(e){this.setSaturation(qx.lang.Number.limit(this.getSaturation()-e.getWheelDelta(bf),0,100));
this.setHue(qx.lang.Number.limit(this.getHue()+e.getWheelDelta(D),0,360));
e.stop();
},_setHueSaturationOnFieldEvent:function(e){var cC=qx.lang.Number.limit(e.getDocumentTop()-this.__ok,0,256);
var cB=qx.lang.Number.limit(e.getDocumentLeft()-this.__ol,0,256);
this.getChildControl(bx).setDomPosition(cB,cC);
this.__og=bs;
this.setSaturation(100-Math.round(cC/2.56));
this.setHue(Math.round(cB*1.40625));
this.__og=null;
},_setRedFromSpinner:function(){if(this.__og!==null){return;
}this.__og=bv;
this.setRed(this.getChildControl(bp).getValue());
this.__og=null;
},_setGreenFromSpinner:function(){if(this.__og!==null){return;
}this.__og=bv;
this.setGreen(this.getChildControl(bd).getValue());
this.__og=null;
},_setBlueFromSpinner:function(){if(this.__og!==null){return;
}this.__og=bv;
this.setBlue(this.getChildControl(W).getValue());
this.__og=null;
},_setHueFromSpinner:function(){if(this.__og!==null){return;
}this.__og=bw;
this.setHue(this.getChildControl(V).getValue());
this.__og=null;
},_setSaturationFromSpinner:function(){if(this.__og!==null){return;
}this.__og=bw;
this.setSaturation(this.getChildControl(U).getValue());
this.__og=null;
},_setBrightnessFromSpinner:function(){if(this.__og!==null){return;
}this.__og=bw;
this.setBrightness(this.getChildControl(ba).getValue());
this.__og=null;
},_onHexFieldChange:function(e){if(this.__og!==null){return;
}
try{var cE=this.getChildControl(bF);
var cD=qx.util.ColorUtil.hexStringToRgb(bz+cE.getValue());
}catch(cF){return;
}this.__og=bt;
this.setRed(cD[0]);
this.setGreen(cD[1]);
this.setBlue(cD[2]);
this.__og=null;
},_setHexFromRgb:function(){var cG=qx.util.ColorUtil.rgbToHexString([this.getRed(),this.getGreen(),this.getBlue()]);
this.getChildControl(bF).setValue(cG);
},_onColorFieldClick:function(e){var cH=e.getTarget().getBackgroundColor();

if(!cH){return this.error("Missing backgroundColor value for field: "+e.getTarget());
}var cI=qx.util.ColorUtil.stringToRgb(cH);
this.setRed(cI[0]);
this.setGreen(cI[1]);
this.setBlue(cI[2]);
},_setHueFromRgb:function(){switch(this.__og){case bw:case bs:case bc:break;
default:var cJ=qx.util.ColorUtil.rgbToHsb([this.getRed(),this.getGreen(),this.getBlue()]);
this.setHue(cJ[0]);
this.setSaturation(cJ[1]);
this.setBrightness(cJ[2]);
}},_setRgbFromHue:function(){switch(this.__og){case bv:case bt:break;
default:var cK=qx.util.ColorUtil.hsbToRgb([this.getHue(),this.getSaturation(),this.getBrightness()]);
this.setRed(cK[0]);
this.setGreen(cK[1]);
this.setBlue(cK[2]);
}},_setPreviewFromRgb:function(){var cL=qx.util.ColorUtil.rgbToRgbString([this.getRed(),this.getGreen(),this.getBlue()]);
this.getChildControl(Y).setBackgroundColor(cL);
},setPreviousColor:function(cM,cN,cO){var cP=qx.util.ColorUtil.rgbToRgbString([cM,cN,cO]);
this.getChildControl(be).setBackgroundColor(cP);
this.setRed(cM);
this.setGreen(cN);
this.setBlue(cO);
},_setBrightnessGradiant:function(){var cQ=qx.util.ColorUtil;
var cR=cQ.hsbToRgb([this.getHue(),this.getSaturation(),255]);
var cS=cQ.rgbToRgbString(cR);
this.getChildControl(br).setBackgroundColor(cS);
},_onAppear:function(e){var cT=qx.util.ColorUtil.rgbToRgbString([this.getRed(),this.getGreen(),this.getBlue()]);
this.getChildControl(be).setBackgroundColor(cT);
this.getChildControl(Y).setBackgroundColor(cT);
}}});
})();
(function(){var a="qx.lang.Number";
qx.Class.define(a,{statics:{isInRange:function(b,c,d){return b>=c&&b<=d;
},isBetweenRange:function(e,f,g){return e>f&&e<g;
},limit:function(h,i,j){if(j!=null&&h>j){return j;
}else if(i!=null&&h<i){return i;
}else{return h;
}}}});
})();
(function(){var j="info box",i="updateBuddy",h="remotePropertiesChanged",g="window text",f="updateFriendOf",e="Device %1 is off-line",d="showOutputConfig",c="showPropertiesTab",b="showTrackingRate",a="",v="Device %1 is off-line or you have no permissions",u="Configure remotely the device of your buddy %1",t="Remote configure device of %1",s="Configure remotely your device (mobile phone or PDA)",r="Device %1 is off-line, getting last known configuration",q="showSleepingMode",p="window title",o="16/pda_blue.png",n="showSmsTab",m="track.deviceconf.DeviceWindow";
var k=100;
var l=250;
qx.Class.define(m,{extend:track.util.WindowWithHelpIcon,construct:function(w,x){track.util.WindowWithHelpIcon.call(this);
this.setLayout(new qx.ui.layout.VBox(2));
this.buddyTO=x;
this.setCaption(this.getCaptionText());
this.setIcon(xbGetIcon(o));
this.trackGui=w;
this.log=this.trackGui.getLogger();
this.trackRateTab=null;
this.sleepingModeTab=null;
this.outputControlTab=null;
this.viewPropertiesTab=null;
this.miscSettingsTab=null;
this.header=null;
this.smsTab=null;
this.remotePropertiesChangedListenerFunc=null;
this.setShowStatusbar(true);
this.setResizable(true);
this.updateFriendOfListenerFunc=this.trackGui.watchee.getBuddyManager().getEventManager().addListener(f,function(y){if(this.buddyTO.getLoginName()!=y.getData().buddyTO.getLoginName())return;
this.log.info("DeviceWindow: TODO Received 'updateFriendOf' event for "+this.buddyTO.getLoginName());
},this);
this.updateBuddyListenerFunc=this.trackGui.watchee.getBuddyManager().getEventManager().addListener(i,function(z){if(z.getData().buddyTO.getLoginName()!=this.buddyTO.getLoginName()){return;
}this.buddyTO=z.getData().buddyTO;
this.setCaption(this.getCaptionText());

if(this.header!=null){this.header.setValue(this.getHeaderText());
}},this);
},members:{getBuddyTO:function(){return this.buddyTO;
},getCaptionText:function(){return this.trc(p,t,this.buddyTO.getAliasAndLoginName());
},getHeaderText:function(){var A=(this.buddyTO.isCurrentLoginAccount())?this.trc(g,s):this.trc(g,u,this.buddyTO.getAliasAndLoginName());
return A;
},getDeviceWindowTop:function(){if(k>200)k=100;
k+=25;
return k;
},getDeviceWindowLeft:function(){if(l>350)l=250;
l+=25;
return l;
},createDeviceWindow:function(){this.header=new qx.ui.basic.Label(this.getHeaderText());
this.header.setRich(true);
this.add(this.header);
var F=new track.util.EnhancedTabView();
var C=xbProperties.getBoolean(b,true);

if(C){this.trackRateTab=new track.deviceconf.TrackRateTab(this,this.buddyTO);
this.trackRateTab.createTab(F);
F.setSelection([this.trackRateTab.tabviewPage]);
}var B=xbProperties.getBoolean(q,this.getBuddyTO().getDeviceInfo().supportsSleepingMode());

if(B){this.sleepingModeTab=new track.deviceconf.PowerSaveModeTab(this,this.buddyTO);
this.sleepingModeTab.createTab(F);
}var E=xbProperties.getBoolean(d,(this.getBuddyTO().getDeviceInfo().getCountOutputControls()>0));

if(E){this.outputControlTab=new track.deviceconf.OutputControlTab(this,this.buddyTO);
this.outputControlTab.createTab(F);
}var D=xbProperties.getBoolean(c,true);

if(D){this.miscSettingsTab=new track.deviceconf.MiscSettingsTab(this,this.buddyTO);
this.miscSettingsTab.createTab(F,false);
this.viewPropertiesTab=new track.deviceconf.ViewPropertiesTab(this,this.buddyTO);
this.viewPropertiesTab.createTab(F,false);
}var G=xbProperties.getBoolean(n,false);

if(!this.getBuddyTO().getDeviceInfo().isJ2me())G=false;

if(G){this.smsTab=new track.deviceconf.SmsTab(this,this.buddyTO);
this.smsTab.createTab(F,false);
}this.add(F,{flex:1});
this.trackGui.getMyRoot().add(this,{left:this.getDeviceWindowLeft(),top:this.getDeviceWindowTop()});
this.open();
this.remotePropertiesChangedListenerFunc=this.buddyTO.getDevice().getEventManager().addListener(h,function(H){var I=H.getData().propertyCollection;
this._onRemoteProperiesChanged(I);
},this);
this.loadRemoteProperties();
},_onRemoteProperiesChanged:function(J){if(this.sleepingModeTab!=null){this.sleepingModeTab.onRemoteProperiesChanged(J);
}
if(this.outputControlTab!=null){this.outputControlTab.onRemoteProperiesChanged(J);
}
if(this.trackRateTab!=null){this.trackRateTab.onRemoteProperiesChanged(J);
}
if(this.miscSettingsTab!=null){this.miscSettingsTab.onRemoteProperiesChanged(J);
}
if(this.viewPropertiesTab!=null){this.viewPropertiesTab.onRemoteProperiesChanged(J);
}},loadRemoteProperties:function(){var K=this.buddyTO.getDeviceInfo().hasOfflineProxyConfiguration();
this._loadPropertyCollection(K);
},_loadPropertyCollection:function(L){this.setStatus(a);
var N=this.buddyTO.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_CFG_TRACKING);

if(!N){this.setStatus(this.trc(j,v,this.buddyTO.getLoginName()));
return;
}var M=this.buddyTO.isOnline();

if(L){this.trackGui.sendGetDeviceConfiguration(this.buddyTO.getLoginName());

if(!M){if(this.buddyTO.getDeviceInfo().hasOfflineProxyConfiguration())this.setStatus(this.trc(j,r,this.buddyTO.getLoginName()));
else this.setStatus(this.trc(j,e,this.buddyTO.getLoginName()));
}return;
}
if(M&&this.buddyTO.getDevice().hasPropertyCollectionCompleteCached()==false){this.trackGui.sendGetDeviceConfiguration(this.buddyTO.getLoginName());
}else{var O=this.buddyTO.getDevice().getPropertyCollection();

if(O!=null){this.log.info("DeviceWindow._loadPropertyCollection using from cache");
this._onRemoteProperiesChanged(O);
}else{this.log.info("DeviceWindow._loadPropertyCollection not done: isOnline="+M+" pcIsNull="+(this.buddyTO.getDevice().getPropertyCollection()==null));
}}
if(!M){this.setStatus(this.trc(j,e,this.buddyTO.getLoginName()),3000);
return;
}},destroyPopup:function(){if(this.remotePropertiesChangedListenerFunc!=null){if(this.trackGui.watchee!=null&&this.buddyTO!=null)this.buddyTO.getDevice().getEventManager().removeListener(h,this.remotePropertiesChangedListenerFunc);
this.remotePropertiesChangedListenerFunc=null;
}
if(this.updateFriendOfListenerFunc!=null){if(this.trackGui.watchee!=null){this.trackGui.watchee.getBuddyManager().getEventManager().removeListener(f,this.updateFriendOfListenerFunc);
}this.updateFriendOfListenerFunc=null;
}
if(this.updateBuddyListenerFunc!=null){if(this.trackGui.watchee!=null){this.trackGui.watchee.getBuddyManager().getEventManager().removeListener(i,this.updateBuddyListenerFunc);
}this.updateBuddyListenerFunc=null;
}
if(this.trackRateTab!=null){this.trackRateTab.clear();
this.trackRateTab=null;
}
if(this.sleepingModeTab!=null){this.sleepingModeTab.clear();
this.sleepingModeTab=null;
}
if(this.outputControlTab!=null){this.outputControlTab.clear();
this.outputControlTab=null;
}
if(this.miscSettingsTab!=null){this.miscSettingsTab.clear();
this.miscSettingsTab=null;
}
if(this.viewPropertiesTab!=null){this.viewPropertiesTab.clear();
this.viewPropertiesTab=null;
}
if(this.smsTab!=null){this.smsTab.clear();
this.smsTab=null;
}this.trackGui.getMyRoot().remove(this);
this.close();

if(this.trackGui==null)return;
this.log.info("destruct DeviceWindow "+this.getBuddyTO().getLoginName());
this.trackGui=null;
this.buddyTO=null;
this.log=null;
}},destruct:function(){this.destroyPopup();
}});
})();
(function(){var k="",j="Button label",i="32/statusLine/deviceStateUnknown.png",h="_action",g="action",f="type",d="trackingState",c="tracking",b="16/categories/development.png",a="Disabled for this account",R="Auto Tracking",Q="Tracking Rate",P="32/statusLine/deviceStateNoGPS.png",O="trackRateTab.enabled",N="gps",M="button",L="Start Tracking",K="execute",J="Device shall send tracking data",I="ToolTip",r="stop",s="GroupBox title",p="middle",q="32/statusLine/deviceStateOff.png",n="tab title",o="input info",l="start",m="22/actions/view-refresh.png",t="16/statusLine/toolTipIcon.png",u="trackConfigWindow.trackOnOffButton.enabled",A="right",z="22/devices/network-wireless.png",C="On/Off tracking on remote device:",B="admin",E="32/statusLine/deviceStateOn.png",D="track.deviceconf.TrackRateTab",w="label",H="Vtrt",G="groupbox title",F="left",v="trackConfigWindow.showTrackingIcon",x="Stop Tracking",y="You have no permission to switch on or off tracking";
qx.Class.define(D,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(S,T){qx.core.Object.call(this);
this.buddyConfigWindow=S;
this.buddyTO=T;
this.trackGui=this.buddyConfigWindow.trackGui;
this.ME="TrackRateTab.js";
this.log=this.trackGui.getLogger();
this.trackingRateStruct=null;
this.tabviewPage=null;
this.trackRateGroup=null;
this.trackOnOffSubmitButton=null;
this.isTrackingAtom=null;
this.trackingIsOn=false;
this.KEY_TRACKING_RATE="trackingRate";
},members:{getBuddyTO:function(){return this.buddyTO;
},getSpecificDevice:function(){return this.getBuddyTO().getDevice();
},updateEnabledState:function(){var U=this.buddyTO.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_CFG_TRACKING);

if(this.tabviewPage!=null)this.tabviewPage.setEnabled(xbProperties.getBoolean(O,U));
this.tabviewPage.getChildControl(M).setEnabled(true);
},createTab:function(V){this.tabviewPage=new qx.ui.tabview.Page(this.trc(n,R),xbGetQxIcon(z));
this.tabviewPage.setLayout(new qx.ui.layout.VBox(10));
V.add(this.tabviewPage);

if(this.trackGui.watchee==null)return;
this.showCmdStr=xbProperties.getBoolean(B,false);
this.trackingRateStruct=net.watchee.TrackingRate.parseOldOrNew(this.trackingRate);
this.trackRateGroup=new track.rules.TrackRateGroup(this.trackGui,this);
var W=6;
this.trackRateGroup.createGroup(W,this.trc(s,Q),true,xbGetQxIcon(b));
this.tabviewPage.add(this.trackRateGroup.getGroupBox());
var X=this._createTrackOnOff();

if(X!=null){this.tabviewPage.add(X);
}this.updateEnabledState();
},onRemoteProperiesChanged:function(Y){var bb=Y.contains(this.KEY_TRACKING_RATE)||Y.contains(H)||Y.isAll();

if(!bb)return;
var ba=Y.getStr(this.KEY_TRACKING_RATE,k);

if(ba!=k){this.trackingRateStruct=net.watchee.TrackingRate.parseOldOrNew(ba);
}else{this.trackingRateStruct=net.watchee.TrackingRate.parseOldOrNew(ba);
}this.trackingIsOn=this.trackingRateStruct.switchedOn;
this.trackingIsOn=Y.getBoolean(c,this.trackingIsOn);
this.tabviewPage.removeAll();
this.trackRateGroup.setTrackingRate(this.trackingRateStruct);
this.trackRateGroup.updateEnabledFeatures(this.getSpecificDevice().getDeviceInfo());
this.tabviewPage.add(this.trackRateGroup.getGroupBox());
var bc=this._createTrackOnOff();

if(bc!=null){this.tabviewPage.add(bc);
}var be=this.trackingIsOn;
var bd=null;

if(Y.get(d)!=null){bd=Y.getInt(d,-1);
be=(bd==0||bd==1);
}else if(this.buddyTO.getDeviceInfo().isBlackbox()){bd=be?1:-1;
}this._setTrackLabel(be);
this._setTrackingIcon(bd);
this.updateEnabledState();
},_setTrackLabel:function(bf){if(this.trackOnOffSubmitButton==null)return;
this.trackingIsOn=bf;
this.trackOnOffSubmitButton.setLabel(this._getTrackingLabel());
this._setTrackingIcon(bf?1:-1);
},_createTrackOnOff:function(){if(this.buddyTO.getDeviceInfo().isWonde()){return null;
}
if(this.trackGui.watchee.getAccountTO().isPublic()){return new qx.ui.basic.Label(this.trc(w,y));
}var bi=new qx.ui.groupbox.GroupBox(this.trc(G,J),xbGetQxIcon(b));
var bg=new qx.ui.layout.Grid(6,4);
bi.setLayout(bg);
bg.setRowAlign(0,F,p);
bg.setRowHeight(0,30);
bi.add(new qx.ui.basic.Label(this.trc(o,C)),{row:0,column:0});
this.trackOnOffSubmitButton=new qx.ui.form.Button(this._getTrackingLabel(),xbGetQxIcon(m));
this.trackOnOffSubmitButton.setAlignX(A);
bi.add(this.trackOnOffSubmitButton,{row:0,column:1});
this.trackOnOffSubmitButton.addListener(K,function(e){if(this.trackGui.watchee==null)return;
var bk=(this.trackingIsOn)?r:l;
this.trackingIsOn=!this.trackingIsOn;
{var bl=new net.watchee.PropertyCollection();
bl.add(new net.watchee.PropertyPair(g,bk));
bl.add(new net.watchee.PropertyPair(h,bk));
bl.add(new net.watchee.PropertyPair(f,N));
this.trackGui.sendActionToDevice(this.buddyTO.getLoginName(),bl);
};
{var bl=new net.watchee.PropertyCollection();
bl.add(new net.watchee.PropertyPair(g,bk));
bl.add(new net.watchee.PropertyPair(h,bk));
bl.add(new net.watchee.PropertyPair(f,c));
this.trackGui.sendActionToDevice(this.buddyTO.getLoginName(),bl);
};
this._setTrackLabel(this.trackingIsOn);
this.trackOnOffSubmitButton.setEnabled(false);
qx.event.Timer.once(function(e){this.trackOnOffSubmitButton.setEnabled(true);
},this,10000);
},this);

if(xbProperties.getBoolean(u,true)==false){this.trackOnOffSubmitButton.setEnabled(false);
var bj=this.trc(I,a);
var bh=new qx.ui.tooltip.ToolTip(bj,xbGetIcon(t));
bh.setRich(true);
bh.setShowTimeout(50);
this.trackOnOffSubmitButton.setToolTip(bh);
}
if(xbProperties.getBoolean(v,true)){this.isTrackingAtom=new qx.ui.basic.Atom(k);
this._setTrackingIcon(null);
bi.add(this.isTrackingAtom,{row:0,column:2});
}
if(this.getBuddyTO().getDeviceInfo().isIOS()){bi.setEnabled(false);
}return bi;
},_setTrackingIcon:function(bm){if(this.isTrackingAtom==null)return;
var bn=xbGetIcon(i);

if(bm!=null&&this.getBuddyTO().hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_DEVICE_STATUS)){if(bm==0)bn=xbGetIcon(P);
else if(bm==-1)bn=xbGetIcon(q);
else if(bm==1)bn=xbGetIcon(E);
else bn=xbGetIcon(i);
}this.isTrackingAtom.setIcon(bn);
},_getTrackingLabel:function(){return (this.trackingIsOn)?this.trc(j,x):this.trc(j,L);
},clear:function(){}},destruct:function(){this._disposeFields();
this._disposeObjects();
}});
})();
(function(){var m="Label",k="changeValue",j="middle",h="ListItem",g="h",f="km",d="min",c="sec",b="m",a="Send all",I="changeSelection",H="a position",G="infoMsgBox",F="Change persistently (survive device restart)",E="Disabled for this account",D="Tracking Rate",C="trackRateTab.enabled",B="16/actions/dialog-ok.png",A="button",z="execute",t="Send on course change of",u="ToolTip",r="Send new tracking rate for %1",s="track.rules.TrackRateGroup",p="degree a position",q="trackConfigWindow.trackRateButton.enabled",n="16/statusLine/toolTipIcon.png",o="input info",v="Send tracking rate command",w="Send new tracking rate for %1.<br/><b>Note: The buddy is offline</b>",y="groupbox title",x="Submit";
qx.Class.define(s,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(J,K){qx.core.Object.call(this);
this.trackGui=J;
this.masterWindow=K||null;
this.groupBox=null;
this.sendTrackingRateCheckBox=null;
this.distanceCheckBox=null;
this.distanceSpinner=null;
this.distanceEntitySelectBox=null;
this.distanceHBox=null;
this.heartbeatCheckBox=null;
this.heartbeatSpinner=null;
this.heartbeatEntitySelectBox=null;
this.heartbeatHBox=null;
this.headingCheckBox=null;
this.headingSpinner=null;
this.headingHBox=null;
this.supportsTrackingByHeartbeat=true;
this.supportsTrackingByDistance=true;
this.supportsTrackingByHeadingChange=true;
this.minimumMeter=100;
this.minimumSec=5;
this.maximumHeartbeatHours=1000;
this.maximumDistanceKm=1000;
this.lastKnownDeviceInfo=null;
},members:{getGroupBox:function(){return this.groupBox;
},_checkAll:function(L){this.distanceCheckBox.setValue(L);
this.distanceCheckBox.fireDataEvent(k,L);
this.headingCheckBox.setValue(L);
this.headingCheckBox.fireDataEvent(k,L);
this.heartbeatCheckBox.setValue(L);
this.heartbeatCheckBox.fireDataEvent(k,L);
},createDistanceHBox:function(){var M=new qx.ui.container.Composite(new qx.ui.layout.HBox(10));
var N=new qx.ui.container.Composite(new qx.ui.layout.HBox(6));
this.distanceCheckBox=new qx.ui.form.CheckBox();
this.distanceCheckBox.addListener(k,function(e){var Q=e.getData();
N.setEnabled(Q);
},this);
var O=this.getDeviceInfo();

if(O!=null&&O.isWonde()){this.maximumDistanceKm=65;
}this.distanceLabel1=new qx.ui.basic.Label(this.trc(m,a)).set({alignY:j});
this.distanceSpinner=new qx.ui.form.Spinner(this.minimumMeter,500,5000);
this.distanceSpinner.setSingleStep(10);
this.distanceSpinner.setPageStep(100);
var P=new qx.util.format.NumberFormat();
P.setMaximumFractionDigits(0);
this.distanceSpinner.setNumberFormat(P);
this.distanceEntitySelectBox=new qx.ui.form.SelectBox().set({width:50});
this.listItemM=new qx.ui.form.ListItem(this.trc(h,b),null,b);
this.distanceEntitySelectBox.add(this.listItemM);
this.listItemKM=new qx.ui.form.ListItem(this.trc(h,f),null,f);
this.distanceEntitySelectBox.add(this.listItemKM);
this.distanceEntitySelectBox.addListener(I,function(e){var R=(e.getData().length==0)?null:e.getData()[0];

if(R.getModel()==b){this.distanceSpinner.setMinimum(this.minimumMeter);
this.distanceSpinner.setMaximum(5000);
this.distanceSpinner.setSingleStep(10);
this.distanceSpinner.setPageStep(100);
}else if(R.getModel()==f){this.distanceSpinner.setMinimum(1);
this.distanceSpinner.setMaximum(this.maximumDistanceKm);
this.distanceSpinner.setSingleStep(1);
this.distanceSpinner.setPageStep(10);
}},this);
this.distanceLabel2=new qx.ui.basic.Label(this.trc(m,H)).set({alignY:j});
M.add(this.distanceCheckBox);
M.add(N);
N.add(this.distanceLabel1);
N.add(this.distanceSpinner);
N.add(this.distanceEntitySelectBox);
N.add(this.distanceLabel2);
this.distanceHBox=M;
return M;
},createHeartbeatHBox:function(){var S=new qx.ui.container.Composite(new qx.ui.layout.HBox(10));
var T=new qx.ui.container.Composite(new qx.ui.layout.HBox(6));
this.heartbeatCheckBox=new qx.ui.form.CheckBox();
this.heartbeatCheckBox.addListener(k,function(e){var V=e.getData();
T.setEnabled(V);
},this);
this.heartbeatLabel1=new qx.ui.basic.Label(this.trc(m,a)).set({alignY:j});
this.heartbeatSpinner=new qx.ui.form.Spinner(this.minimumSec,120,300);
this.heartbeatSpinner.set({singleStep:1,pageStep:10});
var U=new qx.util.format.NumberFormat();
U.setMaximumFractionDigits(0);
this.heartbeatSpinner.setNumberFormat(U);
this.heartbeatEntitySelectBox=new qx.ui.form.SelectBox().set({width:60});
this.listItemSec=new qx.ui.form.ListItem(this.trc(h,c),null,c);
this.heartbeatEntitySelectBox.add(this.listItemSec);
this.listItemMin=new qx.ui.form.ListItem(this.trc(h,d),null,d);
this.heartbeatEntitySelectBox.add(this.listItemMin);
this.listItemHour=new qx.ui.form.ListItem(this.trc(h,g),null,g);
this.heartbeatEntitySelectBox.add(this.listItemHour);
this.heartbeatEntitySelectBox.addListener(I,function(e){var W=this.getDeviceInfo();

if(W!=null&&W.isWonde()){this.maximumHeartbeatHours=18;
}var X=(e.getData().length==0)?null:e.getData()[0];

if(X.getModel()==c){this.heartbeatSpinner.setMinimum(this.minimumSec);
this.heartbeatSpinner.setMaximum(300);
this.heartbeatSpinner.setSingleStep(1);
this.heartbeatSpinner.setPageStep(10);
}else if(X.getModel()==d){this.heartbeatSpinner.setMinimum(1);
this.heartbeatSpinner.setMaximum(300);
this.heartbeatSpinner.setSingleStep(1);
this.heartbeatSpinner.setPageStep(10);
}else if(X.getModel()==g){this.heartbeatSpinner.setMinimum(1);
this.heartbeatSpinner.setMaximum(this.maximumHeartbeatHours);
this.heartbeatSpinner.setSingleStep(1);
this.heartbeatSpinner.setPageStep(10);
}},this);
this.heartbeatLabel2=new qx.ui.basic.Label(this.trc(m,H)).set({alignY:j});
S.add(this.heartbeatCheckBox);
S.add(T);
T.add(this.heartbeatLabel1);
T.add(this.heartbeatSpinner);
T.add(this.heartbeatEntitySelectBox);
T.add(this.heartbeatLabel2);
this.heartbeatHBox=S;
return S;
},createHeadingHBox:function(){var Y=new qx.ui.container.Composite(new qx.ui.layout.HBox(10));
var ba=new qx.ui.container.Composite(new qx.ui.layout.HBox(6));
this.headingCheckBox=new qx.ui.form.CheckBox();
this.headingCheckBox.addListener(k,function(e){var bc=e.getData();
ba.setEnabled(bc);
},this);
this.headingLabel1=new qx.ui.basic.Label(this.trc(m,t)).set({alignY:j});
this.headingSpinner=new qx.ui.form.Spinner(10,30,90);
this.headingSpinner.set({singleStep:1,pageStep:10});
var bb=new qx.util.format.NumberFormat();
bb.setMaximumFractionDigits(0);
this.headingSpinner.setNumberFormat(bb);
this.headingLabel2=new qx.ui.basic.Label(this.trc(m,p)).set({alignY:j});
Y.add(this.headingCheckBox);
Y.add(ba);
ba.add(this.headingLabel1);
ba.add(this.headingSpinner);
ba.add(this.headingLabel2);
this.headingHBox=Y;
return Y;
},createSendSwitchOffHBox:function(){var bd=new qx.ui.container.Composite(new qx.ui.layout.HBox(10));
this.sendTrackingRateCheckBox=new qx.ui.form.CheckBox();
var be=new qx.ui.basic.Label(this.trc(m,v)).set({alignY:j});
this.sendTrackingRateCheckBox.addListener(k,function(e){var bf=e.getData();
this.distanceHBox.setEnabled(bf);
this.heartbeatHBox.setEnabled(bf);
this.headingHBox.setEnabled(bf);
},this);
bd.add(this.sendTrackingRateCheckBox);
bd.add(be);
return bd;
},createSendConfigHBox:function(){var bg=new qx.ui.container.Composite(new qx.ui.layout.HBox(10));
var bi=this.getDeviceInfo();
this.trackingRatePersistent=new qx.ui.form.CheckBox(this.trc(o,F));
this.trackingRatePersistent.setValue(false);

if(bi==null||!bi.supportsTransientTrackingChange()){this.trackingRatePersistent.setEnabled(false);
this.trackingRatePersistent.setValue(true);
}this.submitButton=new qx.ui.form.Button(this.trc(A,x),xbGetQxIcon(B));
this.KEY_TRACKING_RATE="trackingRate";
this.submitButton.addListener(z,function(e){if(this.trackGui.watchee==null)return;
var bl=new net.watchee.PropertyCollection();
var bk=this.getTrackingRateStrGui();
var bp=new net.watchee.PropertyPair(this.KEY_TRACKING_RATE,bk);
bp.setDurable(this.trackingRatePersistent.getValue());
bl.add(bp);
var bn=this.getBuddyTO();
this.trackGui.sendDeviceSettings(bn.getLoginName(),bl);
var bo=bn.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_CFG);

if(bn.isOnline()||!bo){this.trackGui.infoMsgBox(this.trc(G,r,bn.getLoginName()),3000);
}else{this.trackGui.infoMsgBox(this.trc(G,w,bn.getLoginName()),3000);
}
if(bo){var bm=this.masterWindow.getSpecificDevice();

if(bm!=null&&bm.getPropertyCollection()!=null){bm.getPropertyCollection().addKeyValue(this.KEY_TRACKING_RATE,bk);
}}this.submitButton.setEnabled(false);
qx.event.Timer.once(function(e){this.submitButton.setEnabled(true);
},this,10000);
},this);

if(xbProperties.getBoolean(q,true)==false){this.submitButton.setEnabled(false);
var bj=this.trc(u,E);
var bh=new qx.ui.tooltip.ToolTip(bj,xbGetIcon(n));
bh.setRich(true);
bh.setShowTimeout(50);
this.submitButton.setToolTip(bh);
}bg.add(this.trackingRatePersistent);
bg.add(this.submitButton);
return bg;
},createGroup:function(bq,br,bs,bt,bu){var bs=org.xmlBlaster.util.toBoolean(bs,false);
var bu=org.xmlBlaster.util.toBoolean(bu,false);
var bx=br||this.trc(y,D);
var bv=bt||null;
this.groupBox=new qx.ui.groupbox.GroupBox(bx,bv);
var bw=this.groupBox;
this.groupBox.setLayout(new qx.ui.layout.VBox(10));
this.groupBox.setContentPadding(bq||12);

if(bu){this.groupBox.add(this.createSendSwitchOffHBox());
}this.groupBox.add(this.createHeartbeatHBox());
this.groupBox.add(this.createDistanceHBox());
this.groupBox.add(this.createHeadingHBox());
this._checkAll(false);

if(bs){this.groupBox.add(this.createSendConfigHBox());
}this.updateEnabledFeatures(this.getDeviceInfo());
return this.groupBox;
},getBuddyTO:function(){var by=this.masterWindow.getSpecificDevice();

if(by!=null){return by.getBuddyTO();
}return null;
},getDeviceInfo:function(){var bz=this.masterWindow.getSpecificDevice();

if(bz!=null){return bz.getDeviceInfo();
}return this.lastKnownDeviceInfo;
},updateEnabledFeatures:function(bA){if(xbProperties.getBoolean(C,true)==false)return;
var bA=bA||null;

if(bA==null){this.supportsTrackingByHeartbeat=true;
this.supportsTrackingByDistance=true;
this.supportsTrackingByHeadingChange=true;
}else{this.lastKnownDeviceInfo=bA;
this.supportsTrackingByHeartbeat=bA.supportsTrackingByHeartbeat();
this.supportsTrackingByDistance=bA.supportsTrackingByDistance();
this.supportsTrackingByHeadingChange=bA.supportsTrackingByHeadingChange();
}this.__oq();
},__oq:function(){if(this.distanceHBox!=null)this.distanceHBox.setEnabled(this.supportsTrackingByDistance);

if(this.heartbeatHBox!=null)this.heartbeatHBox.setEnabled(this.supportsTrackingByHeartbeat);

if(this.headingHBox!=null)this.headingHBox.setEnabled(this.supportsTrackingByHeadingChange);
},setTrackingRateStr:function(bB){this.setTrackingRate(net.watchee.TrackingRate.parseOldOrNew(bB));
},setTrackingRate:function(bC){this.trackingRateStruct=bC;
this.distanceCheckBox.setValue(this.trackingRateStruct.useSwitchDistanceMeter());
this.heartbeatCheckBox.setValue(this.trackingRateStruct.useSwitchIntervalHeartBeat());
this.headingCheckBox.setValue(this.trackingRateStruct.useSwitchHeadingChangeThreshold());
if(this.trackingRateStruct.sendIntervalHeartBeat<=300){this.heartbeatEntitySelectBox.setSelection([this.listItemSec]);
this.heartbeatSpinner.setValue(this.trackingRateStruct.sendIntervalHeartBeat);
}else if(this.trackingRateStruct.sendIntervalHeartBeat<=(300*60)){this.heartbeatEntitySelectBox.setSelection([this.listItemMin]);
this.heartbeatSpinner.setValue(this.trackingRateStruct.sendIntervalHeartBeat/60);
}else{this.heartbeatEntitySelectBox.setSelection([this.listItemHour]);
this.heartbeatSpinner.setValue(this.trackingRateStruct.sendIntervalHeartBeat/3600);
}
if(this.trackingRateStruct.distanceMeter<=5000){this.distanceEntitySelectBox.setSelection([this.listItemM]);

if(this.trackingRateStruct.distanceMeter>=this.distanceSpinner.getMinimum()&&this.trackingRateStruct.distanceMeter<=this.distanceSpinner.getMaximum()){this.distanceSpinner.setValue(this.trackingRateStruct.distanceMeter);
}}else{this.distanceEntitySelectBox.setSelection([this.listItemKM]);
this.distanceSpinner.setValue(this.trackingRateStruct.distanceMeter/1000);
}this.headingSpinner.setValue(this.trackingRateStruct.headingChangeThreshold);
if(this.sendTrackingRateCheckBox!=null)this.sendTrackingRateCheckBox.setValue(true);
},getTrackingRateStrGui:function(){var bE=new net.watchee.TrackingRate();
bE.setSwitchDistanceMeter(this.useDistance());
var bG=new Number(this.distanceSpinner.getValue());

if(this.distanceEntitySelectBox.getSelection()[0].getModel()==f)bG*=1000;

if(bG<this.minimumMeter)bG=this.minimumMeter;
bE.setDistanceMeter(bG);
bE.setSwitchIntervalHeartBeat(this.useHeartbeat());
var bD=new Number(this.heartbeatSpinner.getValue());

if(this.heartbeatEntitySelectBox.getSelection()[0].getModel()==d)bD*=60;
else if(this.heartbeatEntitySelectBox.getSelection()[0].getModel()==g)bD*=3600;

if(bD!=0&&bD<this.minimumSec)bD=this.minimumSec;

if(bD==0){bE.setSwitchIntervalHeartBeat(false);
}else{bE.setSendIntervalHeartBeat(bD);
}bE.setSwitchHeadingChangeThreshold(this.useHeading());
bE.setHeadingChangeThreshold(this.headingSpinner.getValue());

if(this.sendTrackingRate()){}var bF=bE.toCSV();
return bF;
},useDistance:function(){var bH=(this.distanceCheckBox!=null&&this.distanceCheckBox.getValue()&&this.distanceHBox.isEnabled());
return bH;
},useHeartbeat:function(){var bI=(this.heartbeatCheckBox!=null&&this.heartbeatCheckBox.getValue()&&this.heartbeatHBox.isEnabled());
return bI;
},useHeading:function(){var bJ=(this.headingCheckBox!=null&&this.headingCheckBox.getValue()&&this.headingHBox.isEnabled());
return bJ;
},sendTrackingRate:function(){if(this.sendTrackingRateCheckBox==null){return true;
}var bK=this.sendTrackingRateCheckBox.getValue();
return bK;
},useTrackingRate:function(){return this.sendTrackingRate();
},getEventSinksTOFromGui:function(){var bM=[];

if(this.useTrackingRate()){var bL=this.getTrackingRateStrGui();
var bN=new track.rulesmodel.EventSinkTO(this.trackGui,null);
bN.setExpression(bL);
bN.setEventSinkTypeEnum(net.watchee.EventSinkTypeEnum.DEVICECOMMAND_TRACKINGRATE);
bM.push(bN);
}return bM;
},onChangeSelectedRuleName:function(bO){if(bO==null){this._checkAll(false);
}else{var bP=bO.getEventSinkTOs(net.watchee.EventSinkTypeEnum.DEVICECOMMAND_TRACKINGRATE);

if(bP.length>=1){var bR=bP[0];
var bQ=bR.getExpression();
this.setTrackingRateStr(bQ);
}else{if(this.sendTrackingRateCheckBox!=null){this.sendTrackingRateCheckBox.setValue(false);
}this.distanceCheckBox.setValue(false);
this.heartbeatCheckBox.setValue(false);
this.headingCheckBox.setValue(false);
}}},onChangeSelectedDevices:function(bS){if(bS.length==0){this.updateEnabledFeatures(null);
}
for(var i=0,l=bS.length;i<l;i++){var bU=bS[i];
var bT=bU.getDeviceInfo();
this.updateEnabledFeatures(bT);
break;
}},clear:function(){}},destruct:function(){}});
})();
(function(){var a="qx.util.format.IFormat";
qx.Interface.define(a,{members:{format:function(b){},parse:function(c){}}});
})();
(function(){var t="",s="Number",r="-",q="0",p="String",o="changeNumberFormat",n='(',m="g",l="Boolean",k="$",d="NaN",j='([0-9]{1,3}(?:',g='{0,1}[0-9]{3}){0,})',c='\\d+){0,1}',b="qx.util.format.NumberFormat",f="Infinity",e="^",h=".",a="-Infinity",i='([-+]){0,1}';
qx.Class.define(b,{extend:qx.core.Object,implement:qx.util.format.IFormat,construct:function(u){qx.core.Object.call(this);
this.__ix=u;
},properties:{minimumIntegerDigits:{check:s,init:0},maximumIntegerDigits:{check:s,nullable:true},minimumFractionDigits:{check:s,init:0},maximumFractionDigits:{check:s,nullable:true},groupingUsed:{check:l,init:true},prefix:{check:p,init:t,event:o},postfix:{check:p,init:t,event:o}},members:{__ix:null,format:function(v){switch(v){case Infinity:return f;
case -Infinity:return a;
case NaN:return d;
}var z=(v<0);

if(z){v=-v;
}
if(this.getMaximumFractionDigits()!=null){var G=Math.pow(10,this.getMaximumFractionDigits());
v=Math.round(v*G)/G;
}var F=String(Math.floor(v)).length;
var w=t+v;
var C=w.substring(0,F);

while(C.length<this.getMinimumIntegerDigits()){C=q+C;
}
if(this.getMaximumIntegerDigits()!=null&&C.length>this.getMaximumIntegerDigits()){C=C.substring(C.length-this.getMaximumIntegerDigits());
}var B=w.substring(F+1);

while(B.length<this.getMinimumFractionDigits()){B+=q;
}
if(this.getMaximumFractionDigits()!=null&&B.length>this.getMaximumFractionDigits()){B=B.substring(0,this.getMaximumFractionDigits());
}if(this.getGroupingUsed()){var y=C;
C=t;
var E;

for(E=y.length;E>3;E-=3){C=t+qx.locale.Number.getGroupSeparator(this.__ix)+y.substring(E-3,E)+C;
}C=y.substring(0,E)+C;
}var A=this.getPrefix()?this.getPrefix():t;
var x=this.getPostfix()?this.getPostfix():t;
var D=A+(z?r:t)+C;

if(B.length>0){D+=t+qx.locale.Number.getDecimalSeparator(this.__ix)+B;
}D+=x;
return D;
},parse:function(H){var M=qx.lang.String.escapeRegexpChars(qx.locale.Number.getGroupSeparator(this.__ix)+t);
var K=qx.lang.String.escapeRegexpChars(qx.locale.Number.getDecimalSeparator(this.__ix)+t);
var I=new RegExp(e+qx.lang.String.escapeRegexpChars(this.getPrefix())+i+j+M+g+n+K+c+qx.lang.String.escapeRegexpChars(this.getPostfix())+k);
var L=I.exec(H);

if(L==null){throw new Error("Number string '"+H+"' does not match the number format");
}var N=(L[1]==r);
var P=L[2];
var O=L[3];
P=P.replace(new RegExp(M,m),t);
var J=(N?r:t)+P;

if(O!=null&&O.length!=0){O=O.replace(new RegExp(K),t);
J+=h+O;
}return parseFloat(J);
}}});
})();
(function(){var h="",g="eventSinkType",f="info",e="expression",d="track.rulesmodel.EventSinkTO",c="creationTs",b="modifiedTs",a="EventSink";
qx.Class.define(d,{extend:qx.core.Object,construct:function(i,j){qx.core.Object.call(this);
this.trackGui=i;
if(org.xmlBlaster.util.isDefined(j)){this.propertyCollection=j;
}else{this.propertyCollection=new net.watchee.PropertyCollection(a);
}},members:{getExpression:function(){return this.propertyCollection.getStr(e,h);
},setExpression:function(k){this.propertyCollection.addKeyValue(e,k);
},getEventSinkTypeId:function(){return this.propertyCollection.getStr(g,h);
},getEventSinkTypeEnum:function(){var l=this.propertyCollection.getStr(g,h);
return net.watchee.EventSinkTypeEnum.lookup(l);
},setEventSinkTypeEnum:function(m){var n=null;

if(m===undefined||m==null){n=this.propertyCollection.remove(g);
}else{n=this.propertyCollection.addKeyValue(g,m.getId());
}return (n==null)?null:n.getValue();
},getInfo:function(){return this.propertyCollection.getStr(f,h);
},getInfoMap:function(){return org.xmlBlaster.util.Hashtable.parseCSV(this.getInfo());
},setInfo:function(o){this.propertyCollection.addKeyValue(f,o);
},getPropertyCollection:function(){return this.propertyCollection;
},getCreationTs:function(){return this.propertyCollection.getStr(c,h);
},getModifiedTs:function(){return this.propertyCollection.getStr(b,h);
}},destruct:function(){this._disposeFields();
this._disposeObjects();
}});
})();
(function(){var p="val",o="listItem",n="label",m="middle",k="input info",j="ListItem",h="excluded",g="visible",f="isExpertMode",d="changeSelection",bB="",bA="VsleepDelaySec",bz="left",by="<span style='color:red'><br>Attention: You can shake the device to wake it up. Other methods won't work.</span>",bx="infoMsgBox",bw="button",bv="<span style='color:red;'>Caution: You really need to know what you are doing. Changing this value can cause malfunction!</span>",bu="VsleepGoOnlineOption",bt="VsleepModeNum",bs=" <b>",w="sec",x="</b>",u="right",v="Expert Mode",s="VsleepDurationSec",t="status label",q="track.deviceconf.PowerSaveModeTab",r="Refresh GPS Data",E="Rev.:",F="Power Save Mode",T="askMsgBox",P="VfirmwareRev",bc="changeValue",W="Choose Power Save Mode",bo="<span style='color:green'><br>Note: You can activate the device through the portal, by SMS, calling or shaking.</span>",bi="green",K="16/actions/dialog-ok.png",br="Ssleep",bq="Currently in Power Save Mode",bp="GPS off, GSM off, GPRS off, G-sensor off",I="Default | GPS off, GSM on, GPRS off, G-sensor on",M="Activate Power Save Mode",O="<span style='color:green'><br>Note: You can send an SMS or call the device to wake it up.</span>",R="ToolTip",U="info box",X="<span style='color:green'><br>Note: You can send an SMS, call or shake the device to wake it up.</span>",be="Sending power save mode configuration for %1.<br/><b>Note: The buddy is offline</b>",bk="execute",y="Sending power save mode configuration for %1",z="Medium | GPS off, GSM off, GPRS off, G-sensor on",L="Default | 1 Hour",bb="askMgsBox title",ba="tab title",Y="Activation after",bg="Medium | 9 Hours",bf="Strong | 18 Hours",V="Submit",bd="Selected Mode:",a="powerSaveModeTab.enabled",bj="16/categories/development.png",A="Power Save",B="22/apps/preferences-display.png",Q="The new configuration will only take effect if your device is reachable. <br> <br> Are you sure that your device is online (green LED)?",b="Connect to server during wake-up",c="Tango/16/actions/help-about.png",H="Default | 5 Minutes",C="GPS off, GSM off, GPRS off, G-sensor on",D="red",G="GPS off, GSM on, GPRS off, G-sensor off",S="Send Configuration",bm="Conditions for entering sleep mode within given seconds: <ol><li>No movement</li><li>No commands received</li><li>No button pressed</li></ol>",bl="groupbox title",N="No permission to change tracking rate for public users",bn="Currently normal operation",J="GPS off, GSM on, GPRS on, G-sensor on",bh="<span style='color:red'><br>Attention: In this mode, the device only wakes up on each 'Refresh GPS Data' interval (defaults to 1 hour). There is no other way to wake up the device for sending a new configuration.</span>";
qx.Class.define(q,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(bC,bD){qx.core.Object.call(this);
this.buddyConfigWindow=bC;
this.buddyTO=bD;
this.trackGui=this.buddyConfigWindow.trackGui;
this.ME="PowerSaveModeTab.js";
this.log=this.trackGui.getLogger();
this.delaySeconds=300;
this.durationSeconds=3600;
this.modeNum=2;
this.psmGoOnlineOption=2;
this.OPTION_CONNECT_TO_SERVER=3;
this.trackerIsInSleepmode=false;
this.submitButton=null;
this.firmwareRev=0;
this.newFirmwareSPT10=false;
this.psmGoOnlineOptionCheckBox=null;
this.tabviewPage=null;
},members:{getBuddyTO:function(){return this.buddyTO;
},updateEnabledState:function(){var bE=this.buddyTO.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_CFG_TRACKING);

if(this.tabviewPage!=null){this.tabviewPage.setEnabled(xbProperties.getBoolean(a,bE));
this.tabviewPage.getChildControl(bw).setEnabled(true);
}},createTab:function(bF){this.tabviewPage=new qx.ui.tabview.Page(this.trc(ba,A),xbGetQxIcon(B));
this.tabviewPage.setLayout(new qx.ui.layout.VBox());
bF.add(this.tabviewPage);

if(this.trackGui.watchee==null)return;
this.tabviewPage.add(this._createGroupBox(false));
this.updateEnabledState();
},onRemoteProperiesChanged:function(bG){var bH=bG.contains(bA)||bG.isAll();

if(!bH)return;
this.delaySeconds=bG.getInt(bA,this.delaySeconds);

if(this.delaySeconds==0)this.delaySeconds=300;
this.durationSeconds=bG.getInt(s,this.durationSeconds);
this.psmGoOnlineOption=bG.getInt(bu,this.psmGoOnlineOption);
this.info("VsleepDurationSec="+this.durationSeconds);
this.modeNum=bG.getInt(bt,this.modeNum);
this.info("VsleepModeNum="+this.modeNum);
this.firmwareRev=bG.getInt(P,1);

if(this.firmwareRev>7){this.newFirmwareSPT10=true;
}else{this.newFirmwareSPT10=false;
}this.trackerIsInSleepmode=bG.getBoolean(br,this.trackerIsInSleepmode);
this.tabviewPage.removeAll();
this.tabviewPage.add(this._createGroupBox(true));
this.setCurrentSleepmode(false);
this.updateEnabledState();
},setCurrentSleepmode:function(bI){if(bI){this.statusLabel.setValue(bB);
return;
}
if(this.trackerIsInSleepmode){this.statusLabel.setTextColor(D);
this.statusLabel.setValue(this.trc(t,bq));
}else{this.statusLabel.setTextColor(bi);
this.statusLabel.setValue(this.trc(t,bn));
}},_createGroupBox:function(bJ){if(this.trackGui.watchee.getAccountTO().isPublic()){return new qx.ui.basic.Label(this.trc(U,N));
}this.group1=new qx.ui.groupbox.GroupBox(this.trc(bl,F),xbGetQxIcon(bj));
var bR=new qx.ui.layout.Grid(6,8);
bR.setColumnAlign(0,bz,m);
bR.setColumnAlign(3,u,m);
bR.setColumnMinWidth(0,250);
bR.setColumnMinWidth(3,200);
this.group1.setLayout(bR);
var bL=new qx.ui.layout.Grid(6,8);
bL.setColumnAlign(1,bz,m);
bL.setColumnAlign(2,bz,m);
bL.setColumnAlign(3,u,m);
bL.setColumnMinWidth(2,100);
bL.setColumnMinWidth(3,150);
this.group2=new qx.ui.container.Composite(bL);
var bV=0;
this.firmwareRevLabel=new qx.ui.basic.Label(E+this.firmwareRev);
this.group1.add(this.firmwareRevLabel,{row:bV,column:3});
this.activateSleepingMode=new qx.ui.form.CheckBox(this.trc(k,M));
this.activateSleepingMode.setValue(this.trackerIsInSleepmode);
this.activateSleepingMode.setEnabled(bJ);
this.activateSleepingMode.addListener(bc,function(e){var ca=e.getData();

if(ca){this.group2.show();
}else{this.group2.exclude();
}},this);
this.group1.add(this.activateSleepingMode,{row:bV,column:0});
bV++;
bV=0;
this.choosePowerSaveMode=new qx.ui.form.SelectBox();
this.choosePowerSaveMode.setMinWidth(330);
var bS=new qx.ui.basic.Label(this.trc(k,W));
this.group2.add(bS,{row:bV,column:0});
this.group2.add(this.choosePowerSaveMode,{row:bV,column:1,colSpan:3});
bV++;
var bY=xbGetIcon(c);
var bT=new Array();
bT[1]=new qx.ui.form.ListItem(this.trc(o,J),bY);
bT[1].setUserData(p,1);
bT[2]=new qx.ui.form.ListItem(this.trc(o,I),bY);
bT[2].setUserData(p,2);

if(this.buddyTO.getDeviceInfo().isWondeVtSeries()){bT[3]=new qx.ui.form.ListItem(this.trc(o,C),bY);
bT[3].setUserData(p,3);
}else{bT[3]=new qx.ui.form.ListItem(this.trc(o,G),bY);
bT[3].setUserData(p,3);
}
if(this.newFirmwareSPT10){bT[4]=new qx.ui.form.ListItem(this.trc(o,z),bY);
bT[4].setUserData(p,4);
bT[5]=new qx.ui.form.ListItem(this.trc(o,bp),bY);
bT[5].setUserData(p,5);
}
for(var i=1,l=bT.length;i<l;i++){this.choosePowerSaveMode.add(bT[i]);
}this.selectModeText=this.trc(n,bd);
this.choosePowerSaveModeLabel=new qx.ui.basic.Label(this.selectModeText+bs+new String(this.modeNum)+x);
this.choosePowerSaveModeLabel.setRich(true);
this.group2.add(this.choosePowerSaveModeLabel,{row:bV,column:1,colSpan:3});
bV++;
this.choosePowerSaveMode.addListener(d,function(e){var cb=e.getData()[0];
var cc=cb.getUserData(p);
this.showCautionText(cc);
},this);

if(this.modeNum>0&&this.modeNum<bT.length){this.choosePowerSaveMode.setSelection([bT[this.modeNum]]);
this.showCautionText(this.modeNum);
}else{this.choosePowerSaveMode.setSelection([bT[2]]);
this.showCautionText(2);
}this.powerDownDelayInterval=new qx.ui.form.SelectBox();
this.powerDownDelayInterval.setToolTipText(this.trc(R,bm));
var bP=new qx.ui.basic.Label(this.trc(k,Y));
this.group2.add(bP,{row:bV,column:0});
this.group2.add(this.powerDownDelayInterval,{row:bV,column:1,colSpan:3});
bV++;
var bK=new Array();
bK[0]=new qx.ui.form.ListItem(this.trc(o,H),bY);
bK[0].setUserData(p,5*60);
bK[0].setUserData(f,false);
bK[1]=new qx.ui.form.ListItem(this.trc(o,v),bY);
bK[1].setUserData(f,true);
bK[1].setUserData(p,-1);

for(var i=0,l=bK.length;i<l;++i){this.powerDownDelayInterval.add(bK[i]);
}var bQ=60;
var bM=65535;
this.powerDownDelayIntervalSpinner=new qx.ui.form.Spinner(bQ,this.delaySeconds,bM);
this.powerDownDelayIntervalSpinner.setEnabled(false);
this.powerDownDelayIntervalSpinner.setMaxWidth(100);
var bX=new qx.ui.basic.Label(this.trc(j,w));
this.group2.add(bX,{row:bV,column:2});
this.group2.add(this.powerDownDelayIntervalSpinner,{row:bV,column:1});
bV++;
this.chooseExpertModeLabel=new qx.ui.basic.Label(this.trc(j,bv));
this.chooseExpertModeLabel.setRich(true);
this.group2.add(this.chooseExpertModeLabel,{row:bV,column:1,colSpan:3});
bV++;
this.powerDownDelayInterval.addListener(d,function(e){var ce=e.getData()[0];
var cf=ce.getUserData(p);
var cd=ce.getUserData(f);
this.chooseExpertModeLabel.setVisibility(cd?g:h);

if(cf<0){if(this.activateSleepingMode.getValue())this.powerDownDelayIntervalSpinner.setEnabled(true);
}else{this.powerDownDelayIntervalSpinner.setEnabled(false);
this.powerDownDelayIntervalSpinner.setValue(cf);
}},this);
var bN=(this.delaySeconds!=bK[0].getUserData(p));

if(bN){this.chooseExpertModeLabel.setVisibility(g);
this.powerDownDelayInterval.setSelection([bK[1]]);
this.powerDownDelayIntervalSpinner.setEnabled(true);
}else{this.chooseExpertModeLabel.setVisibility(h);
this.powerDownDelayInterval.setSelection([bK[0]]);
}
if(this.newFirmwareSPT10){this.powerDownDuration=new qx.ui.form.SelectBox();
var bW=new qx.ui.basic.Label(this.trc(k,r));
this.group2.add(bW,{row:bV,column:0});
this.group2.add(this.powerDownDuration,{row:bV,column:1,colSpan:3});
bV++;
var bU=new Array();
bU[0]=new qx.ui.form.ListItem(this.trc(o,L),bY);
bU[0].setUserData(p,3600);
bU[1]=new qx.ui.form.ListItem(this.trc(o,bg),bY);
bU[1].setUserData(p,9*3600);
bU[2]=new qx.ui.form.ListItem(this.trc(o,bf),bY);
bU[2].setUserData(p,18*3600);
bU[3]=new qx.ui.form.ListItem(this.trc(o,v),bY);
bU[3].setUserData(p,-1);

for(var i=0,l=bU.length;i<l;++i){this.powerDownDuration.add(bU[i]);
}this.powerDownDurationSpinner=new qx.ui.form.Spinner(bQ,this.durationSeconds,bM);
this.powerDownDurationSpinner.setEnabled(false);
this.powerDownDurationSpinner.setMaxWidth(100);
var bO=new qx.ui.basic.Label(this.trc(j,w));
this.group2.add(bO,{row:bV,column:2});
this.group2.add(this.powerDownDurationSpinner,{row:bV,column:1});
bV++;
this.chooseExpertAwakeLabel=new qx.ui.basic.Label(this.trc(j,bv));
this.chooseExpertAwakeLabel.setRich(true);
this.group2.add(this.chooseExpertAwakeLabel,{row:bV,column:1,colSpan:3});
bV++;
this.powerDownDuration.addListener(d,function(e){var cg=e.getData()[0];
var ch=cg.getUserData(p);

if(ch<0){this.chooseExpertAwakeLabel.setVisibility(g);

if(this.activateSleepingMode.getValue())this.powerDownDurationSpinner.setEnabled(true);
}else{this.chooseExpertAwakeLabel.setVisibility(h);
this.powerDownDurationSpinner.setEnabled(false);
this.powerDownDurationSpinner.setValue(ch);
}},this);

for(var i=0,l=bU.length;i<l;++i){if(this.durationSeconds==bU[i].getUserData(p)){this.chooseExpertAwakeLabel.setVisibility(h);
this.powerDownDuration.setSelection([bU[i]]);
break;
}
if(i==3){this.chooseExpertAwakeLabel.setVisibility(g);
this.powerDownDuration.setSelection([bU[3]]);
this.powerDownDurationSpinner.setEnabled(true);
}}this.psmGoOnlineOptionCheckBox=new qx.ui.form.CheckBox(this.trc(k,b));
this.psmGoOnlineOptionCheckBox.setValue(this.psmGoOnlineOption==3);
this.psmGoOnlineOptionCheckBox.setEnabled(true);
this.group2.add(this.psmGoOnlineOptionCheckBox,{row:bV,column:1,colSpan:3});
bV++;
}bV=1;

if(!this.trackerIsInSleepmode)this.group2.exclude();
this.group1.add(this.group2,{row:bV,column:0,colSpan:4});
bV++;
this.submitButton=new qx.ui.form.Button(this.trc(bw,V),xbGetQxIcon(K));
this.submitButton.setMaxWidth(100);
this.group1.add(this.submitButton,{row:bV,column:3});
this.statusLabel=new qx.ui.basic.Label(bB);
this.group1.add(this.statusLabel,{row:bV,column:0});
bV++;
this.submitButton.addListener(bk,function(e){this.trackGui.askMsgBox(this.trc(bb,S),this.trc(T,Q),function(ci){if(ci){this.submitData();
}},this);
},this);
return this.group1;
},showCautionText:function(cj){var ck=bB;
if(cj==1){ck=this.trc(n,bo);
}else if(cj==2){ck=this.trc(n,X);
}else if(cj==3){if(this.buddyTO.getDeviceInfo().isWondeVtSeries()){ck=this.trc(n,by);
}else{ck=this.trc(n,O);
}}else if(cj==4){ck=this.trc(n,by);
}else if(cj==5){ck=this.trc(n,bh);
}this.modeNum=cj;
this.choosePowerSaveModeLabel.setValue(this.selectModeText+bs+new String(cj)+x+ck);
},submitData:function(){if(this.trackGui.watchee==null)return;
var cq=new net.watchee.PropertyCollection();
var ct=this.activateSleepingMode.getValue()?net.watchee.RuleTypeEnum.ENTER_SLEEPMODE.toSetActionString():net.watchee.RuleTypeEnum.ENTER_SLEEPMODE.toRemoveActionString();
var cr=new net.watchee.PropertyPair(net.watchee.PC_ACTION,ct);
cr.setDurable(true);
cq.add(cr);
if(this.activateSleepingMode.getValue()){var cl=new net.watchee.PropertyPair(bA,this.powerDownDelayIntervalSpinner.getValue());
cl.setDurable(true);
cq.add(cl);
var cn=new net.watchee.PropertyPair(bt,this.choosePowerSaveMode.getSelection()[0].getUserData(p));
cn.setDurable(true);
cq.add(cn);

if(this.newFirmwareSPT10){var cm=new net.watchee.PropertyPair(s,this.powerDownDurationSpinner.getValue());
cm.setDurable(true);
cq.add(cm);
}
if(this.psmGoOnlineOptionCheckBox!=null){var cp=this.psmGoOnlineOptionCheckBox.getValue()==true?3:2;
var co=new net.watchee.PropertyPair(bu,cp);
co.setDurable(true);
cq.add(co);
}}this.trackGui.sendDeviceSettings(this.buddyTO.getLoginName(),cq);
var cs=this.buddyTO.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_CFG);

if(this.buddyTO.isOnline()||!cs){this.trackGui.infoMsgBox(this.trc(bx,y,this.buddyTO.getLoginName()),3000);
}else this.trackGui.infoMsgBox(this.trc(bx,be,this.buddyTO.getLoginName()),3000);
this.submitButton.setEnabled(false);
this.setCurrentSleepmode(true);
qx.event.Timer.once(function(e){this.submitButton.setEnabled(true);
},this,5000);

if(!this.buddyTO.getDeviceInfo().supportsSleepingMode()){this.activateSleepingMode.setEnabled(false);
this.activateSleepingMode.setValue(false);
this.group2.setEnabled(false);
this.submitButton.setEnabled(false);
}},clear:function(){}},destruct:function(){this._disposeFields();
this._disposeObjects();
}});
})();
(function(){var by="label",bx="oldVal",bw="execute",bv="errorMsgBox",bu="groupbox title",bt="changeValue",bs="Port",br=",",bq=".b",bp=".label",be="VoutputRepeat",bd=".labelOn",bc="ioAliasNames",bb="16/actions/dialog-ok.png",ba="portNumber",Y="Save",X="button",W=".labelOff",V="1",U="ioAnalog",bF="16/apps/preferences-keyboard.png",bG=".decimalDigits",bD=".unit",bE=".a",bB="22/led-red.png",bC="VoutputPeriodicTimeSec",bz="saveAliasNames-",bA="outputControlTab.enabled",bH="Son=0,VoutputNumber=",bI="Setting new command failed: %1",bi="Output Control",bh="outputControl-2",bk="outputControl-",bj="saveAnalog-",bm="<span style='color:green'>Note: Here you can calibrate your analog inputs with the linear formular <b> f(x)=ax+b </b> where x is the tracker input voltage.<br/><i>Deci</i> are the number of decimal places to be used to display the result. <br/>The tracker should be online during changes.</span>",bl="16/categories/development.png",bo="I/O",bn="Son",bg="outputControl-1",bf="The new configuration is saved on the server.<br />The following command is sent to the tracker, please check the response:<br /><span style='color:green'>%1</span>",c="22/led-green.png",d="=",f="a",g=",2,0.06,30.00,1,0,0",h="OUT",j="SanalogIn",k="Blink",m="info box",n="middle",o="Timeout, there is no response from the device",bM="Analog Input Config",bL="Period",bK="VoutputNumber",bJ=" sec",bQ="The new configuration is saved on the server.<br /><span style='color:green'>The tracker is configured already correctly, no command needs to be send</span>",bP="On",bO="Deci",bN="0",bS="center",bR="incrementalResponse=true",E="V",F="queued",C="$ERR",D="16/power_on.png",I="$WP+SETAE=",J="Repetitions",G="22/led-gray.png",H="<br />",A=",VoutputPeriodicTimeSec=0,VoutputRepeat=0",B="track.deviceconf.OutputControlTab",w="resultCsvFlag",v=",bounce=",z="forceDeviceQuerySms=false",y="Text",s="b",r="The new configuration is saved on the server.<br />The following commands are sent to the tracker, please check the responses:<br /><span style='color:green'>%1</span>",u="Setting new command failed:<br />%1",t="outputControl-4",q="tab title",p="VoutputStartTimestamp",O="Off Text",P="",Q="22/led-blink.gif",R="Alias name",K="16/power_off.png",L="22/devices/audio-card.png",M="Off",N="Unit",S="outputControl-3",T="On Text";
qx.Class.define(B,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(bT,bU){qx.core.Object.call(this);
this.buddyConfigWindow=bT;
this.buddyTO=bU;
this.trackGui=this.buddyConfigWindow.trackGui;
this.disableAnalogButtonTimer=null;
this.periodicBlinkingTimer=[];
this.outputCount=4;
this.pendingAnalogCommand=false;
this.guiElements=[];
this.aliasNameCount=8;
this.aliasNameArray=[];
this.analogArray=[];
this.checkInitial=[];
},statics:{MAX_PERIOD_SEC:3276,MAX_TOGGLE_TIMES:65535},members:{getBuddyTO:function(){return this.buddyTO;
},getLoginName:function(){return this.buddyTO.getLoginName();
},updateEnabledState:function(){var bV=this.buddyTO.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_CFG_TRACKING);

if(this.tabviewPage!=null){this.tabviewPage.setEnabled(xbProperties.getBoolean(bA,bV));
}},createTab:function(bW){this.tabviewPage=new qx.ui.tabview.Page(this.trc(q,bo),xbGetQxIcon(L));
this.tabviewPage.setLayout(new qx.ui.layout.HBox(2));
bW.add(this.tabviewPage);
var bX=new qx.ui.container.Composite(new qx.ui.layout.VBox(2));
bX.add(this._createOutputControlBox());
bX.add(this._createAnalogGroupBox());
this.tabviewPage.add(bX,{flex:1});
this.tabviewPage.add(this._createAliasNameGroupBox(),{flex:1});
this.updateEnabledState();
var bY=this.getBuddyTO().getDevice().getPropertyCollection();

if(bY!=null)this.onRemoteProperiesChanged(bY);
},onRemoteProperiesChanged:function(ca){var cb=ca.isAll();

if(!cb)return ;
for(var i=0;i<this.analogArray.length;i++){var ci=ca.getBoolean(j+(i+1));
this.toggleEnabled(i,ci);
this.analogArray[i].check.setValue(ci);
this.checkInitial[i]=ci;
}if(ca.contains(bg)||ca.contains(bh)||ca.contains(S)||ca.contains(t)){for(var i=0;i<this.outputCount;i++){if(i>=this.guiElements.length){break;
}var ce=i+1;
var cf=ca.getStr(bk+ce,bH+ce+A);
var cc=org.xmlBlaster.util.Hashtable.parseCSV(cf);
var ck=cc.get(bn,0);
var cg=cc.get(bC,0);
var cj=cc.get(be,0);
var cd=cc.get(p,null);
var ch=(cg>0);
this.guiElements[i].flashModeCheckBox.setValue(ch);
this.guiElements[i].periodSpinner.setValue(cg);
this.guiElements[i].periodSpinner.setEnabled(ch);
this.guiElements[i].repetitionsSpinner.setValue(cj);
this.guiElements[i].repetitionsSpinner.setEnabled(ch);
this.guiElements[i].startTimestamp=cd;

if(!this.pendingAnalogCommand){this.__ov(ck,this.guiElements[i].portAtom,ch,cg,cj);
}}}this.pendingAnalogCommand=false;
this.updateEnabledState();
},__or:function(){var cl=this.getBuddyTO().getAccountPropertyStr(bc,null);
return this.__os(cl);
},__os:function(cm){if(cm==null){return false;
}var co=org.xmlBlaster.util.Hashtable.parseCSV(cm);

for(var i=0;i<this.aliasNameCount;i++){var cp=this.aliasNameArray[i].port;
var cn=co.get(cp+bd);
var cq=co.get(cp+W);
this.aliasNameArray[i].onTextField.setValue(cn);
this.aliasNameArray[i].offTextField.setValue(cq);

if(i<this.outputCount){this.guiElements[i].onButton.setToolTipText(cn);
this.guiElements[i].offButton.setToolTipText(cq);
}}return true;
},__ot:function(){var cr=this.getBuddyTO().getAccountPropertyStr(U,null);
return this.__ou(cr);
},__ou:function(cs){if(cs==null){return false;
}var ct=org.xmlBlaster.util.Hashtable.parseCSV(cs);

for(var i=0;i<this.analogArray.length;i++){var cu=this.analogArray[i].port;
this.analogArray[i].text.setValue(ct.get(cu+bp));
this.analogArray[i].unit.setValue(ct.get(cu+bD));
var a=ct.getNumber(cu+bE,1);
this.analogArray[i].a.setValue(a);
var b=ct.getNumber(cu+bq,0);
this.analogArray[i].b.setValue(b);
var cv=ct.getNumber(cu+bG,0);
this.analogArray[i].decimalDigitsSpinner.setValue(cv);
}return true;
},__ov:function(cw,cx,cy,cz,cA){if(cw){var cB=cx.getUserData(ba)-1;

if(cy){cx.setIcon(xbGetIcon(Q));
this.periodicBlinkingTimer[cB]=qx.event.Timer.once(function(e){cx.setIcon(xbGetIcon(bB));
this.periodicBlinkingTimer[cB]=null;
},this,1000*cz*cA);
}else{if(this.periodicBlinkingTimer[cB]!=null){this.periodicBlinkingTimer[cB].stop();
this.periodicBlinkingTimer[cB]=null;
}cx.setIcon(xbGetIcon(c));
}}else{cx.setIcon(xbGetIcon(bB));
}},_sendAnalogModeCommand:function(cC,cD){var cE=this.getLoginName();
var cJ=this.getBuddyTO().getDevice().getHwPasswd();
var cH=cD?V:bN;
var cI=I+cJ+br+cC+br+cH+g;
var cL=this.trackGui.getBounceNextVal();
cI=cI+v+cL;
var cK=F;
this.info("Sending _sendAnalogModeCommand to "+cE+": '"+cI+"'");
var cF=45;
this.trackGui.getRequestResponseDispatcher().registerRequest(cL,cF,this.responseOrExceptionOrTimeoutReceivedForAnalog,this,null);
this.pendingAnalogCommand=true;
var cG=false;
this.trackGui.sendRawDeviceCommand(cE,cL,cI,cK,cG);
return cI;
},responseOrExceptionOrTimeoutReceivedForAnalog:function(cM,cN,cO){var cP=true;
this.trackGui.receivedBlackboxResponse(this.getLoginName(),cM,cN,cO,cP);
this.enableAnalogSubmitButton();
this.buddyConfigWindow.loadRemoteProperties();
},_createOutputControlBox:function(){var de=new qx.ui.groupbox.GroupBox(this.trc(bu,bi),xbGetQxIcon(bl));
var cS=new qx.ui.layout.Grid(3,3);
var dj=0;
var db=0,cV=1,dd=2,cT=3,cQ=4,dg=5;
cS.setColumnWidth(cV,25);
cS.setColumnWidth(dd,25);
cS.setColumnAlign(cT,bS,n);
de.setLayout(cS);
de.add(new qx.ui.basic.Label(this.trc(by,bs)),{row:dj,column:db});
de.add(new qx.ui.basic.Label(this.trc(by,bP)),{row:dj,column:cV});
de.add(new qx.ui.basic.Label(this.trc(by,M)),{row:dj,column:dd});
de.add(new qx.ui.basic.Label(this.trc(by,k)),{row:dj,column:cT});
de.add(new qx.ui.basic.Label(this.trc(by,bL)),{row:dj,column:cQ});
de.add(new qx.ui.basic.Label(this.trc(by,J)),{row:dj++,column:dg});
var cR=function(dk,dl,dm,dn,dp,dq,dr){return function(){var du=this.getLoginName();
var dv=dp.getValue();
var dB=dq.getValue();
var dx=dv;
this.info("sendOutput to "+du+": "+dl+","+dk+","+dx+","+dB);
var dw=new net.watchee.PropertyCollection();
var dA=dk?net.watchee.RuleTypeEnum.OUTPUT_CTRL.toSetActionString():net.watchee.RuleTypeEnum.OUTPUT_CTRL.toRemoveActionString();
var dy=new net.watchee.PropertyPair(net.watchee.PC_ACTION,dA);
dy.setDurable(true);
dw.add(dy);
var ds=new net.watchee.PropertyPair(bK,dl);
ds.setDurable(true);
dw.add(ds);

if(dk){var dz=new net.watchee.PropertyPair(bC,dx);
dz.setDurable(true);
dw.add(dz);

if(dB!==undefined){var dt=new net.watchee.PropertyPair(be,dB);
dt.setDurable(true);
dw.add(dt);
}}dr.setEnabled(false);
var dC=true;
this.trackGui.sendDeviceSettings(du,dw,dC,function(dD,dE,dF){dr.setEnabled(true);
if(dD==null){this.trackGui.errorMsgBox(this.trc(bv,o));
}else if(dD.isException()){if(dF.exception!=undefined&&dF.exception!=null&&dF.exception.errorCode!=undefined){this.trackGui.errorMsgBox(this.trc(bv,bI,dF.exception.errorCode));
}else{this.trackGui.errorMsgBox(this.trc(bv,u,dD.getResult()));
}}else{var dP=dk;
var dM=dD.getPropValue(w,false);
var dG=dM.indexOf(bR)!=-1;

if(!dG){var dO=dD.getPropValue(org.xmlBlaster.util.PropTO.KEY_RESULT);
this.info("IO response: "+dO);

if(dO.indexOf(C)!=-1){}else{var dK=dO.indexOf(d);
var dJ=dO.substring(dK+1);
var dI=dJ.split(br);

if(dI.length>1){dP=(dI[1]==V);
}var dH=z;
var dN=org.xmlBlaster.util.PropTO.VALUE_TASK_NAMED_GETCURRENTLOCATION;
var dL=false;
this.trackGui.sendActionToDeviceCSV(this.getLoginName(),dH,dN,dL,dH);
this.info(dN+" send to "+this.getLoginName()+" to update LED on map");
this.__ov(dP,dm,dn.getValue(),dv,dB);
}}}},this);
};
};
var da=function(dQ,dR){return function(e){var dS=e.getData();
dQ.setEnabled(dS);
dR.setEnabled(dS);

if(dS){dQ.setValue(dQ.getUserData(bx));
dR.setValue(dR.getUserData(bx));
}else{dQ.setUserData(bx,dQ.getValue());
dR.setUserData(bx,dR.getValue());
dQ.setValue(0);
dR.setValue(0);
}};
};

for(var i=0;i<this.outputCount;i++){var cY=i+1;
var df=new qx.ui.basic.Atom(h+cY,xbGetIcon(G));
df.setUserData(ba,cY);
de.add(df,{row:dj,column:db});
var dh=new qx.ui.form.CheckBox();
de.add(dh,{row:dj,column:cT});
var cX=new qx.ui.form.Spinner(0,1,track.deviceconf.OutputControlTab.MAX_PERIOD_SEC);
cX.setSingleStep(0.2);
cX.setPageStep(1);
var cU=new qx.util.format.NumberFormat();
cU.setMaximumFractionDigits(1);
cU.setPostfix(bJ);
cX.setNumberFormat(cU);
de.add(cX,{row:dj,column:cQ});
cX.setUserData(bx,cX.getValue());
var cW=new qx.ui.form.Spinner(0,3,track.deviceconf.OutputControlTab.MAX_TOGGLE_TIMES);
de.add(cW,{row:dj,column:dg});
cW.setUserData(bx,cW.getValue());
var di=new qx.ui.form.Button();
di.setIcon(xbGetIcon(D));
di.setPadding(0);
de.add(di,{row:dj,column:cV});
var dc=new qx.ui.form.Button();
dc.setIcon(xbGetIcon(K));
dc.setPadding(0);
de.add(dc,{row:dj++,column:dd});
this.guiElements[i]={portAtom:df,flashModeCheckBox:dh,periodSpinner:cX,repetitionsSpinner:cW,onButton:di,offButton:dc,startTimestamp:null};
di.addListener(bw,cR(true,cY,df,dh,cX,cW,di),this);
dc.addListener(bw,cR(false,cY,df,dh,cX,cW,dc),this);
dh.addListener(bt,da(cX,cW),this);
dh.fireDataEvent(bt,false);
}return de;
},_createAliasNameGroupBox:function(){var eb=new qx.ui.groupbox.GroupBox(this.trc(bu,R),xbGetQxIcon(bF));
var dU=new qx.ui.layout.Grid(3,3);
eb.setLayout(dU);
var ed=0;
var dX=0;
var ea=1;
var dV=2;
eb.add(new qx.ui.basic.Label(this.trc(by,bs)),{row:ed,column:dX});
eb.add(new qx.ui.basic.Label(this.trc(by,T)),{row:ed,column:ea});
eb.add(new qx.ui.basic.Label(this.trc(by,O)),{row:ed++,column:dV});

for(var i=0;i<8;i++){var ec=(i<this.outputCount)?net.watchee.GPSData.KEY_OUT_PREFIX:net.watchee.GPSData.KEY_IN_PREFIX;
ec+=(i%this.outputCount+1);
var dW=new qx.ui.basic.Label(ec.toUpperCase());
var dT=new qx.ui.form.TextField();
var dY=new qx.ui.form.TextField();
eb.add(dW,{row:ed,column:dX});
eb.add(dT,{row:ed,column:ea});
eb.add(dY,{row:ed++,column:dV});
this.aliasNameArray.push({port:ec,onTextField:dT,offTextField:dY});
}this.aliasSubmitButton=new qx.ui.form.Button(this.trc(X,Y),xbGetQxIcon(bb));
eb.add(this.aliasSubmitButton,{row:ed,column:dV});
this.aliasSubmitButton.addListener(bw,function(e){this.saveAliasNames();
this.insensitiveAliasTimeout(this.aliasSubmitButton,false);
},this);
this.__or();
return eb;
},saveAliasNames:function(){var ee=this.getLoginName();
var eh=bc;
var ei=new org.xmlBlaster.util.Hashtable();

for(var i=0,l=this.aliasNameArray.length;i<l;i++){var ef=this.aliasNameArray[i];
ei.put(ef.port+bd,ef.onTextField.getValue());
ei.put(ef.port+W,ef.offTextField.getValue());
}var eg=ei.toCSV();
this.trackGui.sendChangeAccountProperty(ee,eh,eg,function(){this.getBuddyTO().addAccountPropertyKeyValue(eh,eg);
},this,bz+eh);
},_createAnalogGroupBox:function(){var eu=new qx.ui.groupbox.GroupBox(this.trc(bu,bM),xbGetQxIcon(bF));
var ej=new qx.ui.layout.Grid(3,3);
eu.setLayout(ej);
var eA=0;
var er=0;
var eo=1;
var es=2;
var ew=3;
var ex=4;
var et=5;
var ek=new qx.ui.basic.Label(this.trc(by,bm));
ek.setRich(true);
ek.setWrap(true);
eu.add(ek,{row:eA++,column:er,colSpan:6});
eu.add(new qx.ui.basic.Label(this.trc(by,bs)),{row:eA,column:er});
eu.add(new qx.ui.basic.Label(this.trc(by,y)),{row:eA,column:eo});
eu.add(new qx.ui.basic.Label(this.trc(by,N)),{row:eA,column:es});
eu.add(new qx.ui.basic.Label(this.trc(by,f)),{row:eA,column:ew});
eu.add(new qx.ui.basic.Label(this.trc(by,s)),{row:eA,column:ex});
eu.add(new qx.ui.basic.Label(this.trc(by,bO)),{row:eA,column:et});
eA++;
var ep=new qx.util.format.NumberFormat();
ep.setMaximumFractionDigits(2);

for(var i=0;i<2;i++){var ey=(i==0)?net.watchee.GPSData.KEY_INANALOG1:net.watchee.GPSData.KEY_INANALOG2;
var el=(i==0)?net.watchee.GPSData.KEY_IN1:net.watchee.GPSData.KEY_IN2;
var eq=new qx.ui.form.CheckBox(el.toUpperCase());
var em=new qx.ui.form.TextField();
var ez=new qx.ui.form.TextField(E).set({width:40});
var a=new qx.ui.form.Spinner(-100,1,100).set({singleStep:0.5,numberFormat:ep,width:60});
var b=new qx.ui.form.Spinner(-100,0,100).set({singleStep:0.5,numberFormat:ep,width:60});
var ev=new qx.ui.form.Spinner(0,0,6).set({singleStep:1,width:38});
var en=function(x,eB){eq.addListener(bt,function(e){var eC=e.getData();
eB.toggleEnabled(x,eC);
},eB);
};
en(i,this);
eu.add(eq,{row:eA,column:er});
eu.add(em,{row:eA,column:eo});
eu.add(ez,{row:eA,column:es});
eu.add(a,{row:eA,column:ew});
eu.add(b,{row:eA,column:ex});
eu.add(ev,{row:eA,column:et});
eA++;
this.analogArray.push({port:ey,text:em,unit:ez,a:a,b:b,check:eq,decimalDigitsSpinner:ev});
}
for(var i=0;i<this.outputCount;i++){this.periodicBlinkingTimer.push(null);
}this.analogSubmitButton=new qx.ui.form.Button(this.trc(X,Y),xbGetQxIcon(bb));
eu.add(this.analogSubmitButton,{row:eA,column:er,colSpan:2});
this.analogSubmitButton.addListener(bw,function(e){this.saveAnalog();
},this);
this.__ot();
return eu;
},toggleEnabled:function(x,eD){this.aliasNameArray[x+4].onTextField.setEnabled(!eD);
this.aliasNameArray[x+4].offTextField.setEnabled(!eD);
this.analogArray[x].text.setEnabled(eD);
this.analogArray[x].unit.setEnabled(eD);
this.analogArray[x].a.setEnabled(eD);
this.analogArray[x].b.setEnabled(eD);
this.analogArray[x].decimalDigitsSpinner.setEnabled(eD);
},insensitiveAliasTimeout:function(eE){eE.setEnabled(false);
this.disableButtonTimer=qx.event.Timer.once(function(e){this.disableButtonTimer=null;
eE.setEnabled(true);
},this,3000);
},enableAnalogSubmitButton:function(){if(this.disableAnalogButtonTimer!=null){this.disableAnalogButtonTimer.stop();
this.disableAnalogButtonTimer=null;
}this.analogSubmitButton.setEnabled(true);
},saveAnalog:function(){var eG=this.getLoginName();
var eQ=false;
var eN=U;
var eL=P;
var eF=0;
var eH=new org.xmlBlaster.util.Hashtable();

for(var i=0,l=this.analogArray.length;i<l;i++){var eP=this.analogArray[i];
eH.put(eP.port+bp,eP.text.getValue());
eH.put(eP.port+bD,eP.unit.getValue());
eH.put(eP.port+bE,eP.a.getValue());
eH.put(eP.port+bq,eP.b.getValue());
eH.put(eP.port+bG,eP.decimalDigitsSpinner.getValue());
var eO=eP.check.getValue();
var eJ=i+1;
var eI=(this.checkInitial[i]!=eO);

if(eI){var eM=this._sendAnalogModeCommand(eJ,eO);

if(eF>0)eL+=H;
eL+=eM;
this.checkInitial[i]=eO;
eF++;
}}this.analogSubmitButton.setEnabled(false);
this.disableAnalogButtonTimer=qx.event.Timer.once(function(e){this.disableAnalogButtonTimer=null;
this.enableAnalogSubmitButton();
},this,15000);
var eK=eH.toCSV();
this.trackGui.sendChangeAccountProperty(eG,eN,eK,function(){this.getBuddyTO().addAccountPropertyKeyValue(eN,eK);
var eR=null;

if(eL.length==0){this.trackGui.infoMsgBox(this.trc(m,bQ));
}else{this.trackGui.infoMsgBox(this.trn(bf,r,eF,eL));
}
if(!eI){this.enableAnalogSubmitButton();
}},this,bj+eN);
},clear:function(){}},destruct:function(){this._disposeFields();
this._disposeObjects();
}});
})();
(function(){var by="info text",bx="right",bw="middle",bv="errorMsgBox",bu="infoMsgBox",bt="16/categories/development.png",bs="groupbox title",br="16/actions/dialog-ok.png",bq="execute",bp="button",be="input info",bd="tooltip",bc="Device control",bb="You have no permission to change the device phone number",ba="You have no permission to reboot the device",Y="to",X="=",W="You have no permission to toggle roaming",V="type",U="bundleId",bF="If the device is offline an SMS is sent, this may take a minute or two",bG="server:hwPhoneNumber",bD="_action",bE="You have no permission to give the device a call",bB="",bC="You have no permission to send push messages to iPad or iPhone",bz="APN/",bA="apnPushSound",bH="apnsend.",bI="publish",bi="voiceCall",bh="Play sound",bk="The phone call is triggered for %1",bj="<b><font color='#FF0000'>Unexpected</font></b> %1",bm="<b><font color='green'>Success</font></b> %1",bl="22/categories/engineering.png",bo="Please enter the phone number of your tracker in a valid format like '+491751111'",bn="application/watchee.service.pc",bg="Changing phone number is available only for blackbox trackers",bf="close the GPRS session during roaming and buffer all new positions. ",a="The Apple push device token of the phone is not known, no push is possible",b="Other",c="Badge-Counter:",d="Push to phone",f="This may result in <b> high traffic cost </b> but supports real time tracking in any network.",g="100%",h="Enable GPRS roaming",i="miscSettingsTab.roamingMode.show",j="server.hwPhoneNumber",k="hangupAfterSec",bM="<clientProperty name='isVoiceCall' type='boolean'>true</clientProperty>",bL="Device phone number for SMS sending",bK=" ",bJ="apnDeviceToken",bQ="No phone number for voicecalls available",bP="Please enter some text",bO=")",bN="</font></b> ",bS="Sending Apple push message to phone",bR="default",E="<span style='color:red'>When enabled</span>, the device will continue sending out positions using the GPRS connection of the roaming network. ",F="Roaming switching is not available for this device type",C="Reboot the device, current settings are not lost",D="+491xxxxxx",I="track.deviceconf.MiscSettingsTab",J="apnPushBadge",G="apnPushAlert",H=" (",A="reboot",B="roaming",s="Call",r="Call the device, ring five times and hang up",u="</clientProperty>",t="deviceToken",o="\n<clientProperty name='loginName'>",n="1",q="Message is pushed to device<br /><br />Text: %1<br />Badge: %2<br />Sound: %3",p="checkbox",m="Change Tracker Phone Number",l="Reboot",O="Submit",P="Toggle roaming mode",Q=",bounce=",R="Calling is not available for this device type",K="Rebooting is not available for this device type",L="sendPhoneCall",M="Timeout, no response after %1 sec",N="<span style='color:green'>When disabled (default)</span>, the device will automatically ",S="tab title",T="Those positions will be sent out whenever the device returns to its standard (non-roaming) network. </br>",z="pn",y="If the device is offline it should wake up, this may take a minute or two",x="Sroaming",w="<b><font color='red'>",v="eu.saken.skipperHD";
qx.Class.define(I,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(bT,bU){qx.core.Object.call(this);
this.buddyConfigWindow=bT;
this.buddyTO=bU;
this.trackGui=this.buddyConfigWindow.trackGui;
this.ME="MiscSettingsTab.js";
this.log=this.trackGui.getLogger();
this.editTextField=null;
this.apnTextField=null;
this.apnDeviceToken=null;
this.appleBundleId=v;
this.propertyCollection=null;
this.roamingCheckBox=null;
},members:{getBuddyTO:function(){return this.buddyTO;
},createTab:function(bV){this.tabviewPage=new qx.ui.tabview.Page(this.trc(S,b),xbGetQxIcon(bl));
this.tabviewPage.setLayout(new qx.ui.layout.VBox(10));
bV.add(this.tabviewPage);
var bW=this.buddyTO.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_CFG_TRACKING);
this.tabviewPage.setEnabled(bW);

if(this.trackGui.watchee==null)return;

if(this.getBuddyTO().getDeviceInfo().isIOS()){this.tabviewPage.add(this._createPushAppleMessage());
}this.tabviewPage.add(this._createChangeHwPhoneNumber());
this.tabviewPage.add(this._createRebootButton());
this.tabviewPage.add(this._createVoicecallButton());
if(xbProperties.getBoolean(i,this.buddyTO.getDeviceInfo().supportsRoamingSwitching())){this.tabviewPage.add(this._createRoamingSwitching());
}},onRemoteProperiesChanged:function(bX){if(this.propertyCollection!=null){this.propertyCollection.merge(bX);
}else{this.propertyCollection=bX.deepClone();
}this.propertyCollection.sortByKeysInsensitive();
var bY=this.propertyCollection.propHash.getKeys();
this.apnDeviceToken=bX.getStr(bJ,this.apnDeviceToken);
this.appleBundleId=bX.getStr(U,this.appleBundleId);

if(bX.isAll()){var cb=bX.getBooleanRelaxed(x,false);

if(this.roamingCheckBox!=null)this.roamingCheckBox.setValue(cb);
var ca=bX.getStr(z,null);

if(ca==null)ca=bX.getStr(j,null);

if(ca!=null&&this.editTextField!=null){this.editTextField.setValue(ca);
var cc=this.getBuddyTO().getDeviceMapping();

if(cc!=null){cc.setHwPhoneNumber(ca);
}}}},_createPushAppleMessage:function(){if(this.trackGui.watchee.getAccountTO().isPublic()){return new qx.ui.basic.Label(this.trc(by,bC));
}
if(!this.buddyTO.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_XSMS)){return new qx.ui.basic.Label(this.trc(by,bC));
}var cg=this.buddyTO.getAccountPropertiesStartsWith(bz);

if(cg.length>0){var ce=cg[0];
var ci=ce.getKey();
var cf=ce.getValueStr();

if(cf.indexOf(X)==-1){this.apnDeviceToken=cf;
}else{var cd=org.xmlBlaster.util.Hashtable.parseCSV(cf);
var cn=cd.get(U);

if(cn!=null){this.appleBundleId=cn;
}var cm=cd.get(t);

if(cm!=null){this.apnDeviceToken=cm;
}}}var ch=new qx.ui.groupbox.GroupBox(this.trc(bs,bS),xbGetQxIcon(bt));
var ck=new qx.ui.layout.Grid(6,2);
ch.setLayout(ck);
ch.setWidth(g);
ck.setColumnWidth(0,140);
ck.setRowAlign(0,bx,bw);
ck.setColumnAlign(0,bx,bw);
ck.setColumnAlign(1,bx);
this.apnTextField=new qx.ui.form.TextField(bB);
this.apnTextField.setMaxLength(200);
ch.add(this.apnTextField,{row:0,column:0});
this.apnSoundCheckBox=new qx.ui.form.CheckBox(this.trc(p,bh));
this.apnSoundCheckBox.setValue(true);
ch.add(this.apnSoundCheckBox,{row:0,column:1});
var cl=new qx.ui.basic.Label(this.trc(by,c));
ch.add(cl,{row:0,column:2});
this.apnSpinner=new qx.ui.form.Spinner(1,1,300);
ch.add(this.apnSpinner,{row:0,column:3});
this.trackinIsOn=false;
var cj=new qx.ui.form.Button(this.trc(bp,d),xbGetQxIcon(br));
cj.setAlignX(bx);
ck.setColumnAlign(1,bx,bw);
ch.add(cj,{row:0,column:4,alignX:bx});
cj.addListener(bq,function(e){if(this.trackGui.watchee==null)return;
var cq=this.apnTextField.getValue();

if(cq==null||cq.length==0){this.trackGui.errorMsgBox(this.trc(bv,bP));
return;
}
if(this.apnDeviceToken===undefined||this.apnDeviceToken==null){this.trackGui.infoMsgBox(this.trc(bu,a));
return;
}var cp=bH+this.appleBundleId;
var cs=new net.watchee.PropertyCollection();
cs.addKeyValue(Y,this.apnDeviceToken);
cs.addKeyValue(G,cq);

if(this.apnSoundCheckBox.getValue()){cs.addKeyValue(bA,bR);
}var ct=this.apnSpinner.getValue();
cs.addKeyValue(J,ct);
var content=cs.toXml();
var cr=new org.xmlBlaster.client.KeyData(cp,bn);
var co=new org.xmlBlaster.client.QosData();
co.setLifeTime(60000);
var cu=new org.xmlBlaster.util.MsgUnit(bI,co,cr,content);
this.trackGui.watchee.getXbAccess().publish(cu);
this.info("APN push send to "+cp+" '"+content+"'");
this.trackGui.infoMsgBox(this.trc(bu,q,cq,ct,this.apnSoundCheckBox.getValue()));
return;
},this);
return ch;
},_createChangeHwPhoneNumber:function(){if(this.trackGui.watchee.getAccountTO().isPublic()){return new qx.ui.basic.Label(this.trc(by,bb));
}
if(!this.buddyTO.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_CFG)){return new qx.ui.basic.Label(this.trc(by,bb));
}var cx=new qx.ui.groupbox.GroupBox(this.trc(bs,bL),xbGetQxIcon(bt));
var cw=new qx.ui.layout.Grid(6,2);
cx.setLayout(cw);
cw.setColumnWidth(0,140);
cw.setRowAlign(0,bx,bw);
cw.setColumnAlign(0,bx,bw);
cw.setColumnAlign(1,bx,bw);
this.editTextField=new qx.ui.form.TextField(D);
this.editTextField.setMaxLength(26);
cx.add(this.editTextField,{row:0,column:0});
var cy=this.getBuddyTO().getDeviceMapping();

if(cy!=null){if(this.editTextField!=null){this.editTextField.setValue(cy.getHwPhoneNumber());
}}this.trackinIsOn=false;
var cv=new qx.ui.form.Button(this.trc(bp,m),xbGetQxIcon(br));
cv.setAlignX(bx);
cw.setColumnAlign(1,bx,bw);
cx.add(cv,{row:0,column:1});
cv.addListener(bq,function(e){if(this.trackGui.watchee==null)return;
var cA=this.trackGui.watchee.validateSmsPhoneNumber(this.editTextField.getValue());

if(cA==null){this.trackGui.errorMsgBox(this.trc(bv,bo));
return;
}
if(!this.getBuddyTO().getDeviceInfo().isBlackbox()){this.trackGui.errorMsgBox(this.trc(bv,bg));
return;
}cv.setEnabled(false);
qx.event.Timer.once(function(e){cv.setEnabled(true);
},this,4000);
var cB=bG;
var cz=cB+X+cA;
this.sendCommand(cz);
},this);

if(!this.getBuddyTO().getDeviceInfo().isBlackbox()){cx.setEnabled(false);
}return cx;
},_createRebootButton:function(){if(this.trackGui.watchee.getAccountTO().isPublic()){return new qx.ui.basic.Label(this.trc(by,ba));
}
if(!this.buddyTO.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_CFG)){return new qx.ui.basic.Label(this.trc(by,ba));
}var cE=new qx.ui.groupbox.GroupBox(this.trc(bs,bc),xbGetQxIcon(bt));
var cD=new qx.ui.layout.HBox(4);
cE.setLayout(cD);
cE.add(new qx.ui.basic.Label(this.trc(be,C)));
cD.setAlignY(bw);
this.trackinIsOn=false;
var cC=new qx.ui.form.Button(this.trc(bp,l),xbGetQxIcon(br));
cE.add(cC);
cC.setToolTipText(this.trc(bd,bF));
cC.addListener(bq,function(e){if(this.trackGui.watchee==null)return;

if(!this.getBuddyTO().getDeviceInfo().isBlackbox()){this.trackGui.errorMsgBox(this.trc(bv,K));
return;
}cC.setEnabled(false);
qx.event.Timer.once(function(e){cC.setEnabled(true);
},this,30000);

if(this.trackGui.watchee==null)return false;
var cG=new net.watchee.PropertyCollection();
cG.add(new net.watchee.PropertyPair(V,A));
cG.add(new net.watchee.PropertyPair(bD,n));
var cF=true;
this.trackGui.sendActionToDevice(this.buddyTO.getLoginName(),cG,cF);
},this);

if(!this.getBuddyTO().getDeviceInfo().isBlackbox()){cE.setEnabled(false);
}return cE;
},_createVoicecallButton:function(){if(this.trackGui.watchee.getAccountTO().isPublic()){return new qx.ui.basic.Label(this.trc(by,bE));
}
if(!this.buddyTO.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_CFG)){return new qx.ui.basic.Label(this.trc(by,bE));
}var cL=null;
var cI=this.getBuddyTO().getDeviceMapping();

if(cI!=null){cL=cI.getHwPhoneNumber();
}cL=this.trackGui.watchee.validateSmsPhoneNumber(cL,true);

if(cL==null){return new qx.ui.basic.Label(this.trc(by,bQ));
}var cJ=new qx.ui.groupbox.GroupBox(this.trc(bs,bc),xbGetQxIcon(bt));
var cK=new qx.ui.layout.HBox(4);
cJ.setLayout(cK);
cJ.add(new qx.ui.basic.Label(this.trc(be,r)));
cK.setAlignY(bw);
this.trackinIsOn=false;
var cH=new qx.ui.form.Button(this.trc(bp,s),xbGetQxIcon(br));
cJ.add(cH);
cH.setToolTipText(this.trc(bd,y));
cH.addListener(bq,function(e){if(this.trackGui.watchee==null)return;

if(!this.getBuddyTO().getDeviceInfo().isBlackbox()){this.trackGui.errorMsgBox(this.trc(bv,R));
return;
}cH.setEnabled(false);
qx.event.Timer.once(function(e){cH.setEnabled(true);
},this,10000);
this._callTheDeviceAndRing(cL);
},this);

if(!this.getBuddyTO().getDeviceInfo().isBlackbox()){cJ.setEnabled(false);
}return cJ;
},_callTheDeviceAndRing:function(cM){var cO=this.trackGui.watchee.getTopicSmssend(cM);
var cP=bM;
cP+=o+this.buddyTO.getLoginName()+u;
var cQ=new net.watchee.PropertyCollection();
var cN=new net.watchee.PropertyPair(Y,cM);
cQ.add(cN);
cN=new net.watchee.PropertyPair(bi,true);
cQ.add(cN);
cN=new net.watchee.PropertyPair(k,18);
cQ.add(cN);
var content=cQ.toXml();
this.trackGui.watchee.publishContent(cO,content,cP,this.trackGui.returnQosOrException,this.trackGui,L);
this.trackGui.infoMsgBox(this.trc(bu,bk,cM));
},_createRoamingSwitching:function(){if(this.trackGui.watchee.getAccountTO().isPublic()){return new qx.ui.basic.Label(this.trc(by,W));
}
if(!this.buddyTO.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_CFG)){return new qx.ui.basic.Label(this.trc(by,W));
}var cT=new qx.ui.groupbox.GroupBox(this.trc(bs,P),xbGetQxIcon(bt));
var cS=new qx.ui.layout.Grid(6,4);
cT.setLayout(cS);
this.roamingCheckBox=new qx.ui.form.CheckBox(this.trc(be,h));
cT.add(this.roamingCheckBox,{row:0,column:0});
this.trackinIsOn=false;
var cR=new qx.ui.form.Button(this.trc(bp,O),xbGetQxIcon(br));
cT.add(cR,{row:0,column:1});
cR.setToolTipText(this.trc(bd,bF));
cR.addListener(bq,function(e){if(this.trackGui.watchee==null)return;

if(!this.getBuddyTO().getDeviceInfo().isBlackbox()){this.trackGui.errorMsgBox(this.trc(bv,F));
return;
}cR.setEnabled(false);
qx.event.Timer.once(function(e){cR.setEnabled(true);
},this,10000);

if(this.trackGui.watchee==null)return false;
var cW=new net.watchee.PropertyCollection();
cW.add(new net.watchee.PropertyPair(V,B));
var cX=this.roamingCheckBox.getValue();
cW.add(new net.watchee.PropertyPair(bD,cX));
var cV=true;
this.trackGui.sendActionToDevice(this.buddyTO.getLoginName(),cW,cV);
},this);
var cU=new qx.ui.basic.Label(this.trc(be,N+bf+T+E+f));
cU.setRich(true);
cU.setWrap(true);
cU.setMaxWidth(490);
cT.add(cU,{row:1,column:0,colSpan:2});
cS.setColumnFlex(0,1);
return cT;
},sendCommand:function(cY){this.RESPONSE_TIMEOUT_SEC=10;
var db=this.trackGui.getBounceNextVal();
cY=cY+Q+db;
this.info("Sending command '"+cY+"'");
var da=null;
this.trackGui.getRequestResponseDispatcher().registerRequest(db,this.RESPONSE_TIMEOUT_SEC,this.responseOrExceptionOrTimeoutReceived,this,da);
this.trackGui.sendRawDeviceCommand(this.buddyTO.getLoginName(),db,cY);
},responseOrExceptionOrTimeoutReceived:function(dc,dd,de){this.info("TestDeviceWindow.js Received response: "+dc);
var dh=org.xmlBlaster.util.PropTO;
var dg=null;

if(dc==null){dg=this.trc(bu,M,de.timeoutSec);
}else if(dc.isException()){dg=bB;
dg+=w+dc.getPropValue(dh.KEY_ERRORCODE)+bN;
dg+=bK+dc.getPropValue(dh.KEY_RESULT);
dg+=H+dc.getPropValue(dh.KEY_DATA)+bO;
}else{var di=dc.getPropValue(dh.KEY_RESULT);

if(dc.getPropValue(dh.KEY_TASK)==net.watchee.Device.VALUE_TASK_NAMED_GETCOMMANDLIST){dg=this.trc(bu,bj,di);
}else{dg=this.trc(bu,bm,di);

if(di.indexOf(bG)!=-1){var df=this.getBuddyTO().getDeviceMapping();

if(df!=null&&this.editTextField!=null){df.setHwPhoneNumber(this.editTextField.getValue());
}}}}this.trackGui.infoMsgBox(dg);
},clear:function(){}},destruct:function(){this._disposeFields();
this._disposeObjects();
}});
})();
(function(){var l="middle",k="right",j="infoMsgBox",h="label",g="groupbox title",f="left",d=",bounce=",c="xbConnectionState",b="16/actions/dialog-ok.png",a="<b>Value</b>",V="track.deviceconf.ViewPropertiesTab",U="</font></b> ",T=")",S="Get current configuration from device",R="-1",Q="Settings of %1",P="16/categories/utilities.png",O="button",N="execute",M="info text",s="<b>Key</b>",t="password",q="<b><font color='#FF0000'>Unexpected</font></b> %1",r="You have no permission to load device configuration",o=" (",p="OFF",m="changeSelection",n="ON",u="tab title",v="16/categories/system.png",C="Refresh",A="",G="View Config",E="<b><font color='green'>Success</font></b> %1",I="trackingState",H="Timeout, no response after %1 sec",x="gpsConnectionState",L="deviceEnum",K="input info",J="1",w="<b><font color='red'>",y="******",z="POLLING",B=" ",D="22/actions/edit-find.png",F="Load from device";
qx.Class.define(V,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(W,X){qx.core.Object.call(this);
this.buddyConfigWindow=W;
this.buddyTO=X;
this.trackGui=this.buddyConfigWindow.trackGui;
this.ME="ViewPropertiesTab.js";
this.log=this.trackGui.getLogger();
this.propertyCollection=null;
},members:{getBuddyTO:function(){return this.buddyTO;
},createTab:function(Y){this.tabviewPage=new qx.ui.tabview.Page(this.trc(u,G),xbGetQxIcon(D));
this.tabviewPage.setLayout(new qx.ui.layout.VBox(2));
Y.add(this.tabviewPage);
var ba=this.buddyTO.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_CFG_TRACKING);
this.tabviewPage.setEnabled(ba);

if(this.trackGui.watchee==null)return;
this.tabviewPage.add(this._createRefreshButton());
this.tabviewPage.add(this._createPropertiesView(),{flex:1});
Y.addListener(m,function(e){if(this.trackGui.watchee==null)return;

if(Y.getSelection()[0]==this.tabviewPage){this.buddyConfigWindow.loadRemoteProperties();
}},this);
},onRemoteProperiesChanged:function(bb){if(this.propertyCollection==null||bb.isAll()){this.propertyCollection=bb.deepClone();
}else{this.propertyCollection.merge(bb);
}this.propertyCollection.sortByKeysInsensitive();
var bk=this.propertiesGrid;
bk.removeAll();
var be=this.propertyCollection.propHash.getKeys();
var bl=0;
var bi=new qx.ui.basic.Label(this.trc(h,s));
bi.setRich(true);
bk.add(bi,{row:bl,column:0});
var bg=new qx.ui.basic.Label(this.trc(h,a));
bg.setRich(true);
bk.add(bg,{row:bl,column:1});

for(var i=0;i<be.length;i++){var bd=be[i];
var bf=this.propertyCollection.propHash.get(bd,null);

if(bf==null)continue;
var bd=bf.getKey();

if(bd==L){continue;
}bl=i+1;
var bh=new qx.ui.form.TextField(bd).set({readOnly:true});
bk.add(bh,{row:bl,column:0});
var bc=bf.getValueStr();

if(bd.indexOf(t)>=0){bc=y;
}else if(bd==c||bd==x||bd==I){if(bc==R)bc=p;
else if(bc==J)bc=n;
else bc=z;
}var bj=new qx.ui.form.TextField(bc).set({readOnly:true});
bk.add(bj,{row:bl,column:1});
}},_createPropertiesView:function(){this.propertiesGrid=new qx.ui.groupbox.GroupBox(this.trc(g,Q,this.buddyTO.getLoginName()),xbGetQxIcon(P));
var bo=0;
var bp=1;
var bn=new qx.ui.container.Scroll();
bn.add(this.propertiesGrid);
var bm=new qx.ui.layout.Grid();
this.propertiesGrid.setLayout(bm);
bm.setSpacingY(4);
bm.setSpacingX(6);
bm.setColumnFlex(bp,1);
bm.setColumnWidth(bo,160);
bm.setColumnAlign(0,f,l);
bm.setColumnAlign(1,f,l);
return bn;
},_createRefreshButton:function(){if(this.trackGui.watchee.getAccountTO().isPublic()){return new qx.ui.basic.Label(this.trc(M,r));
}var bs=new qx.ui.groupbox.GroupBox(this.trc(g,F),xbGetQxIcon(v));
var br=new qx.ui.layout.Grid(6,4);
bs.setLayout(br);
br.setRowAlign(0,k,l);
br.setColumnAlign(0,k,l);
bs.add(new qx.ui.basic.Label(this.trc(K,S)),{row:0,column:0});
this.trackinIsOn=false;
var bq=new qx.ui.form.Button(this.trc(O,C),xbGetQxIcon(b));
bq.setAlignX(k);
br.setColumnAlign(1,k,l);
bs.add(bq,{row:0,column:1});
bq.addListener(N,function(e){if(this.trackGui.watchee==null)return;
this.buddyConfigWindow._loadPropertyCollection(true);
},this);
return bs;
},sendCommand:function(bt){this.RESPONSE_TIMEOUT_SEC=10;
var bv=this.trackGui.getBounceNextVal();
bt=bt+d+bv;
this.info("Sending command '"+bt+"'");
var bu=null;
this.trackGui.getRequestResponseDispatcher().registerRequest(bv,this.RESPONSE_TIMEOUT_SEC,this.responseOrExceptionOrTimeoutReceived,this,bu);
this.trackGui.sendRawDeviceCommand(this.buddyTO.getLoginName(),bv,bt);
},responseOrExceptionOrTimeoutReceived:function(bw,bx,by){this.info("TestDeviceWindow.js Received response: "+bw);
var bA=org.xmlBlaster.util.PropTO;
var bz=null;

if(bw==null){bz=this.trc(j,H,by.timeoutSec);
}else if(bw.isException()){bz=A;
bz+=w+bw.getPropValue(bA.KEY_ERRORCODE)+U;
bz+=B+bw.getPropValue(bA.KEY_RESULT);
bz+=o+bw.getPropValue(bA.KEY_DATA)+T;
}else{if(bw.getPropValue(bA.KEY_TASK)==net.watchee.Device.VALUE_TASK_NAMED_GETCOMMANDLIST){bz=this.trc(j,q,bw.getPropValue(bA.KEY_RESULT));
}else{bz=this.trc(j,E,bw.getPropValue(bA.KEY_RESULT));
}}this.trackGui.infoMsgBox(bz);
},clear:function(){}},destruct:function(){this._disposeFields();
this._disposeObjects();
}});
})();
(function(){var b="pane",a="qx.ui.container.Scroll";
qx.Class.define(a,{extend:qx.ui.core.scroll.AbstractScrollArea,include:[qx.ui.core.MContentPadding],construct:function(content){qx.ui.core.scroll.AbstractScrollArea.call(this);

if(content){this.add(content);
}},members:{add:function(c){this.getChildControl(b).add(c);
},remove:function(d){this.getChildControl(b).remove(d);
},getChildren:function(){return this.getChildControl(b).getChildren();
},_getContentPaddingTarget:function(){return this.getChildControl(b);
}}});
})();
(function(){var k="",j="infoMsgBox",i="text",h="SMS is sent to %1, please check if application comes online in the next minutes.<br /><br />If not, check the battery status and GSM reception of your mobile phone",g="16/actions/dialog-ok.png",f="track.deviceconf.SmsTab",d="button",c="execute",b="info box",a="Send SMS to device %1",D="Wake up command",C="doAction: type=Sgprs,_action=true;type=Sgps,_action=true;type=Str,_action=true",B="50412",A="middle",z="tab title",y="errorMsgBox",x="sendSms",w="SMS",v="left",u="16/categories/development.png",r="Sending SMS is for customers only",s="port",p="No permission to send SMS for public users",q="label",n="to",o="Sending SMS to %1 failed!<br /><br />Please configure a phone number for this device.",l="22/sendSms.png",m="groupbox title",t="Send SMS";
qx.Class.define(f,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(E,F){qx.core.Object.call(this);
this.deviceWindow=E;
this.buddyTO=F;
this.trackGui=this.deviceWindow.trackGui;
this.ME="SmsTab.js";
this.log=this.trackGui.getLogger();
this.smsTextLabel=null;
this.smsTextField=null;
this.submitButton=null;
},members:{getBuddyTO:function(){return this.buddyTO;
},createTab:function(G){this.tabviewPage=new qx.ui.tabview.Page(this.trc(z,w),xbGetIcon(l));
this.tabviewPage.setLayout(new qx.ui.layout.VBox(10));
G.add(this.tabviewPage);
var H=this.buddyTO.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_CFG_TRACKING);
this.tabviewPage.setEnabled(H);

if(this.trackGui.watchee==null)return;
this.tabviewPage.add(this._createSmsSendGroup(false));
},_createSmsSendGroup:function(I){if(this.trackGui.watchee.getAccountTO().isPublic()){return new qx.ui.basic.Label(this.trc(b,p));
}var M=new qx.ui.groupbox.GroupBox(this.trc(m,a,this.getBuddyTO().getLoginName()),xbGetQxIcon(u));
var J=new qx.ui.layout.Grid();
M.setLayout(J);
var K=380;
var L=80;
J.setSpacingY(4);
J.setSpacingX(6);
J.setColumnAlign(0,v,A);
var O=0;
this.smsTextLabel=new qx.ui.basic.Label(this.trc(q,D));
M.add(this.smsTextLabel,{row:O,column:0});
var N=C;
this.smsTextField=new qx.ui.form.TextField(N);
this.smsTextField.setEnabled(false);
this.smsTextField.setMaxLength(160);
this.smsTextField.setWidth(280);
M.add(this.smsTextField,{row:O,column:1});
O++;
this.submitButton=new qx.ui.form.Button(this.trc(d,t),xbGetQxIcon(g));
M.add(this.submitButton,{row:O,column:1});
this.statusLabel=new qx.ui.basic.Label(k);
M.add(this.statusLabel,{row:O,column:0});
O++;
this.submitButton.addListener(c,function(e){var P=this.buddyTO.getDevice();
var Q=P.getHwPhoneNumber();

if(Q==k){this.trackGui.errorMsgBox(this.trc(y,o,P.getDeviceId()));
return;
}this.sendSms(Q);
this.submitButton.setEnabled(false);
qx.event.Timer.once(function(e){this.submitButton.setEnabled(true);
},this,60000);
},this);
return M;
},sendSms:function(R){if(this.trackGui.watchee==null)return;

if(!this.trackGui.getSessionProfile().hasPermissionForSmsSending()){this.trackGui.infoMsgBox(this.trc(j,r));
return false;
}var S=this.trackGui.watchee.getTopicSmssend(R);
var U=k;
var T=B;
var V=new net.watchee.PropertyCollection();
V.add(new net.watchee.PropertyPair(n,R));
V.add(new net.watchee.PropertyPair(s,T));
V.add(new net.watchee.PropertyPair(i,this.smsTextField.getValue()));
var content=V.toXml();
this.trackGui.watchee.publishContent(S,content,U,this.trackGui.returnQosOrException,this.trackGui,x);
this.trackGui.infoMsgBox(this.trc(j,h,R));
},clear:function(){}},destruct:function(){this._disposeFields();
this._disposeObjects();
}});
})();
(function(){var o="infoMsgBox",n="TabView title",m="button",k="",j="This account does not support changing of rules",h="addGeofences",g="info@md-trans.de13",f="<p>Do you still want to save and activate the rule?</p>",d="<br /> (",c="addRules",bi="): Max fences 25 reached",bh="</font></b> ",bg=")",bf="16/rules/rules.png",be="Tracking Rate",bd="Rest Webservice",bc="window title",bb="<b><font color='green'>The rule '%1' is saved.</font></b><p>The tracker is configured accordingly, please check the status window for tracker responses.</p>",ba="<p><font color='red'>Caution:</font> Please provide an email address so we can remember you about the deactivation after an alarm has fired.</p>",Y="Timeout, no response after %1 sec",v="Yes, save it",w="Tracking Rate On Alarm",t="Sound Notification",u="infoMsgBoxException",r="<b><font color='green'>Rule is deleted</font></b>",s="Vgf",p="No, I want to revise it",q="GroupBox title",A="askMsgBox title",B="<pcc><pc><pr k='__class'>Rule</pr><pr k='info'>Fired</pr><pr k='loginName'>joe@mycomp.info</pr><pr k='ruleName'>Rule-Morning</pr><pr k='ruleType'>GEOFENCE_LEAVE</pr></pc><pc><pr k='__class'>Geofence</pr><pr k='coordinates'>9.25480938904866,47.73980862233422,0 9.25515124109398,47.73996595928546,0 9.255465678626445,47.73972628995423,0</pr><pr k='info'>No comment</pr><pr k='loginName'>joe@mycomp.info</pr><pr k='name'>Geofence-House</pr></pc><pc><pr k='__class'>Filter</pr><pr k='expression'>* * * * 12 * ?</pr><pr k='filterType'>CRON</pr><pr k='info'>A crontab filter</pr></pc><pc><pr k='__class'>EventSink</pr><pr k='eventSinkType'>EMAIL</pr><pr k='expression'>mr@marcel.info</pr></pc><pc><pr k='__class'>EventSink</pr><pr k='eventSinkType'>SMS</pr><pr k='expression'>+49174635</pr></pc><pc><pr k='__class'>Rule</pr><pr k='info'>Fired</pr><pr k='loginName'>joe@mycomp.info</pr><pr k='ruleName'>Rule-Evening</pr><pr k='ruleType'>GEOFENCE_LEAVE</pr></pc><pc><pr k='__class'>Rule</pr><pr k='info'>Fired one time</pr><pr k='loginName'>joe@mycomp.info</pr><pr k='ruleName'>Rule-Weekend</pr><pr k='ruleType'>SOS_BUTTON</pr></pc></pcc>",K="track.rules.RulesWindow",I="Rule Definitions",Q="close",M="<p><font color='green'>Note:</font> For tracker of types like 'TK2000' and 'TK5000' no such SMS costs arise if they are online.</p>",U="Output Actions",S="Please select the day and time for this rule",D="showSound",X="Save rule %1",W="Send Alarm To",V="<br /> ",C="<p><font color='red'>Caution:</font> For this tracker type your SIM card on the tracker is charged. It is caused when the tracker sends the configuration SMS responses. The SMS send by the portal are free of charge as specified in your contract.</p>",F="rulesEditable",G="RulesWindow.js:getFreeGeofenceNumber(",J="showRest",L="<b><font color='red'>",N="<p><font color='red'>Caution:</font> Disable power save mode (sleep mode) if configured, otherwise this rule has no effect.</p>",R="user.rule.notExists",T="<b><font color='green'>Success.</font></b>",x="<b><font color='#FF0000'>Unexpected</font></b> %1",y="Please choose a device first",E="getRuleAccountRelationsTOFromGui failed to determine eventID: the propertyConfig from Tracker is missing (not yet loaded)",P="Please enter a unique name for the new rule",O="infoMsgBoxSuccess";
var H=40;
var z=20;
qx.Class.define(K,{extend:track.util.WindowWithHelpIcon,construct:function(bj){track.util.WindowWithHelpIcon.call(this);
this.trackGui=bj;
this.defaultGroupBoxContentPadding=8;
this.ruleNameGroup=new track.rules.RuleNameGroup(this.trackGui,this);
this.ruleTypeGroup=new track.rules.RuleTypeGroup(this.trackGui,this);
this.chooseDevicesGroup=new track.rules.ChooseDevicesGroup(this.trackGui,this);
this.timeFilterGroup=new track.rules.TimeFilterGroup(this.trackGui,this);
this.eventSinkGroup=new track.rules.EventSinkGroup(this.trackGui,this);
this.soundNotificationGroup=new track.rules.SoundNotificationGroup(this.trackGui);
this.restWebserviceGroup=new track.rules.RestWebserviceGroup(this.trackGui);
this.trackRateGroup=new track.rules.TrackRateGroup(this.trackGui,this);
this.outputActionGroup=new track.rules.OutputActionGroup(this.trackGui,this);
this.guiGroups=new Array(this.ruleNameGroup,this.ruleTypeGroup,this.chooseDevicesGroup,this.timeFilterGroup,this.eventSinkGroup,this.soundNotificationGroup,this.restWebserviceGroup,this.trackRateGroup,this.outputActionGroup);
this.defaultBoxSpacing=5;
this.setLayout(new qx.ui.layout.HBox(this.defaultBoxSpacing));
this.leftVBox=new qx.ui.container.Composite(new qx.ui.layout.VBox(this.defaultBoxSpacing));
this.rightVBox=new qx.ui.container.Composite(new qx.ui.layout.VBox(this.defaultBoxSpacing));
this.add(this.leftVBox);
this.add(this.rightVBox);
this.setCaption(this.trc(bc,I));
this.setIcon(xbGetIcon(bf));
this.rulesTO=null;
this.preferredDevice=null;
this.preferredRuleNameToDisplay=null;
this.preferredRuleTypeEnum=null;
this.addListener(Q,function(e){this.clear();
},this);
this.addRulesEventFunc=this.trackGui.watchee.getEventManager().addListener(c,function(bk){var bl=bk.getData();
this.info("RulesWindow: Received addRules event");
this.rulesArrivedFromServer(new track.rulesmodel.RulesTO(this.trackGui,bl));
},this);
},members:{rulesArrivedFromServer:function(bm){this.rulesTO=bm;
this.ruleNameGroup.addRules(this.rulesTO);
if(this.preferredRuleNameToDisplay!=null){this.setSpecificRule(this.preferredDevice,this.preferredRuleTypeEnum,this.preferredRuleNameToDisplay,null);
this.preferredRuleNameToDisplay=null;
this.preferredRuleTypeEnum=null;
}else{this.setSpecificRule(null,null,null,null);
}},isNewRuleTO:function(){return this.ruleNameGroup.isNewRuleTO();
},getRulesWindowTop:function(){if(H>200)H=100;
H+=25;
return H;
},getRulesWindowLeft:function(){if(z>350)z=250;
z+=25;
return z;
},fromEventIDtoGeofenceNumberWonde:function(bn){var bp=50;
var bo=75;

if(bn>=50&&bn<=74)return bn-49;

if(bn>=75&&bn<=99)return bn-74;
return 1;
},fromGeofenceNumberToEventIDWonde:function(bq,br){var br=br||net.watchee.RuleTypeEnum.GEOFENCE_LEAVE.isSame(this.ruleTypeGroup.getCurrentRuleTypeEnum());
var bt=50;
var bs=75;

if(br)return bq+74;
else return bq+49;
},getCurrentlyActiveGeofenceEventIDs:function(bu,bv){if(!bu.hasPropertyCollectionCompleteCached()){this.trackGui.errorMsgBoxDeveloper(E);
return [];
}var bv=bv||net.watchee.RuleTypeEnum.GEOFENCE_LEAVE.isSame(this.ruleTypeGroup.getCurrentRuleTypeEnum());
var bA=[];
var bB=bu.getPropertyCollection();
var by=bB.getHashtable();
var bx=by.getKeys();

for(var i=0,l=bx.length;i<l;i++){var bC=bx[i];

if(bC.indexOf(s)==0){var bz=bC.substr(3);
var bw=org.xmlBlaster.util.toNumber(bz);

if(bv&&bw>=75&&bw<=99)bA.push(bw);

if(!bv&&bw>=50&&bw<=74)bA.push(bw);
}}
if(bA.length>0){bA.sort(function(a,b){return (a-b);
});
}return bA;
},getUsedGeofenceNumbers:function(bD,bE){var bE=bE||net.watchee.RuleTypeEnum.GEOFENCE_LEAVE.isSame(this.ruleTypeGroup.getCurrentRuleTypeEnum());

if(this.ruleTypeGroup.debugGF&&bD.getLoginName()==g){this.info(bD.getLoginName()+" --> "+bE);
}var bH=this.rulesTO.getRules();
var bF=[];

for(var i=0,l=bH.length;i<l;i++){var bJ=bH[i];

if(bE&&bJ.isRuleTypeEnum(net.watchee.RuleTypeEnum.GEOFENCE_LEAVE)||!bE&&bJ.isRuleTypeEnum(net.watchee.RuleTypeEnum.GEOFENCE_ENTER)){var bG=bJ.getRuleAccountRelationTO(bD.getLoginName());

if(bG!=null){var bI=bG.getGeofenceNumber(-1);

if(bI!=-1){bF.push(bI);
}}}}return bF;
},setProperGeofenceNumber:function(bK,bL){var bL=bL||null;
var bN=this.getCurrentRuleTO();

if(bN==null){if(!this.ruleTypeGroup.getSelectedRuleTypeEnum().isGeofenceType()){return -1;
}
if(bK!=null){if(this.ruleTypeGroup.debugGF&&bK.getLoginName()==g){this.info(bK.getLoginName()+" --> "+bL);
}var bO=bK.getDeviceInfo();

if(bO.isWonde()){var bM=this.getUsedGeofenceNumbers(bK);
var bP=this.getFreeGeofenceNumber(bM);

if(bL!=null)bL.setGeofenceNumber(bP);
return bP;
}}return -1;
}
if(!this.ruleTypeGroup.getSelectedRuleTypeEnum().isGeofenceType()){return -1;
}
if(bL==null){bL=bN.getRuleAccountRelationTO(bK.getLoginName());

if(bL==null){return -1;
}}
if(bK.getDeviceInfo().isWonde()&&bL.getGeofenceNumber(-1)==-1){var bR=bN.getRuleAccountRelationTO(bK.getLoginName());
var bQ=this.ruleTypeGroup.getCurrentRuleTypeEnum().isSame(bN.getRuleTypeEnum());
var bP=-1;

if(bR!=null&&bQ){bP=bR.getGeofenceNumber(-1);
}
if(bP==-1){var bM=this.getUsedGeofenceNumbers(bK);
bP=this.getFreeGeofenceNumber(bM);
}bL.setGeofenceNumber(bP);
return bP;
}return -1;
},getCurrentRuleTypeEnum:function(){return this.ruleTypeGroup.getCurrentRuleTypeEnum();
},getFreeGeofenceNumber:function(bS){if(bS==null||bS.length==0)return 1;
bS.sort(function(a,b){return (a-b);
});
var bT=0;

for(var i=0,l=bS.length;i<l;i++){var bV=bS[i];

if((bV-bT)>1)return bT+1;
bT=bV;
}var bU=bS[bS.length-1]+1;

if(bU>25){var bW=G+bS+bi;
this.trackGui.errorMsgBoxDeveloper(bW);
throw new Error(bW);
}return bU;
},loadRemoteProperties:function(bX){if(bX.getDevice().hasPropertyCollectionCompleteCached()){return;
}var bY=bX.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_CFG_TRACKING);

if(!bY){this.error("RulesWindow.loadRemoteProperties: Device "+bX.getLoginName()+" is off-line or you have no permissions");
return;
}if(bX.getDeviceInfo().hasOfflineProxyConfiguration()||bX.isOnline()){this.trackGui.sendGetDeviceConfiguration(bX.getLoginName());
}},areRulesEditable:function(){return xbProperties.getBoolean(F,true);
},test:function(){var ca=B;
var cb=net.watchee.PropertyCollections.parseXml(ca);
return this.__ow(new track.rulesmodel.RulesTO(this.trackGui,cb));
},lookupRuleTOByRuleName:function(cc){var cc=cc||null;

if(this.rulesTO==null)return null;
return this.rulesTO.lookupRuleTOByRuleName(cc);
},lookupRuleTOByRuleTypeEnum:function(cd){var cd=cd||null;

if(this.rulesTO==null)return null;
return this.rulesTO.lookupRuleTOByRuleTypeEnum(cd);
},setSpecificDevice:function(ce,cf,cg,ch){var ce=ce||null;
var cf=cf||null;
var cg=cg||null;
this.preferredDevice=ce;
this.preferredRuleTypeEnum=cf;
this.preferredRuleNameToDisplay=cg;
var ch=ch||null;
this.ruleNameGroup.setSpecificDevice(ce);
var ci=null;
this.requestRulesFromServer(ci);
return true;
},setSpecificRule:function(cj,ck,cl,cm){var cj=cj||null;
var ck=ck||null;
var cl=cl||null;
var cm=cm||null;
var cp=null;
var cn=(cj==null)?null:cj.getLoginName();

if(ck!=null||cl!=null||cm!=null){var co=this.lookupRuleTOByRuleName(cl);

if(co!=null&&(cn==null||co.hasTargetDevice(cn))){this.ruleNameGroup.changeRuleNameSelection(co.getRuleName());
return true;
}var co=this.lookupRuleTOByRuleTypeEnum(ck);

if(co!=null&&(cn==null||co.hasTargetDevice(cn))){this.ruleNameGroup.changeRuleNameSelection(co.getRuleName());
return true;
}this.setDefaultRuleNameActive();
return false;
}this.setDefaultRuleNameActive();
return true;
},setDefaultRuleNameActive:function(){this.onChangeSelectedRuleName(null);
},getSpecificDevice:function(){return this.ruleNameGroup.getSpecificDevice();
},createRulesWindow:function(cq){this.ruleNameGroup.setSpecificDevice(cq);
return this.__ow(null);
},__ow:function(){this.leftVBox.add(this.ruleNameGroup.createGroup(this.defaultGroupBoxContentPadding));
this.leftVBox.add(this.ruleTypeGroup.createGroup(this.defaultGroupBoxContentPadding));
var cv=new track.util.EnhancedTabView();
cv.addPage(this.trc(n,W),this.eventSinkGroup.createGroup(this.defaultGroupBoxContentPadding));

if(xbProperties.getBoolean(D,true))cv.addPage(this.trc(n,t),this.soundNotificationGroup.create(this.defaultGroupBoxContentPadding));

if(xbProperties.getBoolean(J,true))cv.addPage(this.trc(n,bd),this.restWebserviceGroup.create(this.defaultGroupBoxContentPadding));
this.leftVBox.add(cv);
var cr=new qx.ui.container.Composite(new qx.ui.layout.HBox());
cr.add(this.chooseDevicesGroup.createGroup(this.defaultGroupBoxContentPadding));
cr.add(this.timeFilterGroup.createGroup(this.defaultGroupBoxContentPadding));
this.rightVBox.add(cr);
var cu=new track.util.EnhancedTabView();
var cs=this.trackRateGroup.createGroup(this.defaultGroupBoxContentPadding,this.trc(q,w),false,null,true);
cu.addPage(this.trc(n,be),cs);
var ct=this.outputActionGroup.create(this.defaultGroupBoxContentPadding);
cu.addPage(this.trc(n,U),ct);
this.rightVBox.add(cu);
this.trackGui.getMyRoot().add(this,{left:this.getRulesWindowLeft(),top:this.getRulesWindowTop()});
this.addGeofencesEventFunc=this.trackGui.watchee.getEventManager().addListener(h,function(cw){var cx=cw.getData();
this.info("RulesWindow: Received addGeofences event");
this.ruleTypeGroup.addGeofences(new track.rulesmodel.GeofencesTO(this.trackGui,cx));
},this);
this.trackGui.getGeofences(null);
this.onChangeSelectedRuleTypeEnum(this.ruleTypeGroup.getSelectedRuleTypeEnum(),this.getCurrentRuleTO());
this.open();
},requestRulesFromServer:function(cy,cz){var cy=cy||null;
var cz=cz||null;
this.trackGui.getRules(cy);
},onChangeSelectedRuleName:function(cA){for(var i=0,l=this.guiGroups.length;i<l;i++){var cB=this.guiGroups[i];

if(cB.onChangeSelectedRuleName!=undefined){cB.onChangeSelectedRuleName(cA);
}}},onChangeSelectedRuleTypeEnum:function(cC){for(var i=0,l=this.guiGroups.length;i<l;i++){var cD=this.guiGroups[i];

if(cD.onChangeSelectedRuleTypeEnum!=undefined){var cE=this.getCurrentRuleTO();
cD.onChangeSelectedRuleTypeEnum(cC,cE);
}}},onChangeSelectedDevices:function(cF){for(var i=0,l=cF.length;i<l;i++){var cG=cF[i];

if(!cG.getDevice().hasPropertyCollectionCompleteCached()){this.loadRemoteProperties(cG);
}}
for(var i=0,l=this.guiGroups.length;i<l;i++){var cH=this.guiGroups[i];

if(cH.onChangeSelectedDevices!=undefined){var cI=this.getCurrentRuleTO();
cH.onChangeSelectedDevices(cF,cI,this.ruleTypeGroup.getSelectedRuleTypeEnum());
}}},deleteButtonClicked:function(){if(this.trackGui.watchee==null)return;

if(!this.areRulesEditable()){this.trackGui.infoMsgBox(this.trc(o,j));
}var cJ=this.ruleNameGroup.getRuleTOFromGui();

if(cJ==null){return;
}},saveButtonClicked:function(cK){var cK=(cK===undefined)?false:cK;

if(this.trackGui.watchee==null)return;

if(!this.areRulesEditable()){this.trackGui.infoMsgBox(this.trc(o,j));
}var cS=this.ruleNameGroup.getRuleTOFromGui();

if(cS==null){return;
}
if(!org.xmlBlaster.util.isFilled(cS.getRuleName())){this.trackGui.infoMsgBox(this.trc(o,P));
return;
}var cU=this.eventSinkGroup.getEventSinksTOFromGui();
cS.setEventSinkTOs(cU);
for(var i=0,l=cU.length;i<l;i++){var cT=cU[i];

if(cT.getEventSinkTypeEnum()==net.watchee.EventSinkTypeEnum.BROWSER){this.soundNotificationGroup.fillEventSinkTOFromGui(cT);
break;
}}var cL=this.restWebserviceGroup.getEventSinksTOFromGui();
cS.addEventSinkTOs(cL);
var cP=this.trackRateGroup.getEventSinksTOFromGui();
cS.addEventSinkTOs(cP);
var cR=this.outputActionGroup.getEventSinksTOFromGui();

if(cR.length>0)cS.addEventSinkTOs(cR);
var cW=this.chooseDevicesGroup.getRuleAccountRelationsTOFromGui();

if(cW.length==0){this.trackGui.infoMsgBox(this.trc(o,y));
return;
}cS.setRuleAccountRelationTOs(cW);
this.ruleTypeGroup.fillRuleTOFromGui(cS);
var cQ=this.timeFilterGroup.getFiltersTOFromGui();

if(cQ.length==0&&!cS.isFallbackRule()){this.trackGui.infoMsgBox(this.trc(o,S));
return;
}cS.setFilterTOs(cQ);

if(!cK){var cV=null;

if(this.chooseDevicesGroup.supportsSmsConfigurationOnly()){cV=this.trc(o,C);

if(cS.isRuleTypeEnum(net.watchee.RuleTypeEnum.GEOFENCE_LEAVE)||cS.isRuleTypeEnum(net.watchee.RuleTypeEnum.GEOFENCE_ENTER)||cS.isRuleTypeEnum(net.watchee.RuleTypeEnum.OVERSPEED)||cS.isRuleTypeEnum(net.watchee.RuleTypeEnum.MOVED)){var cN=this.eventSinkGroup.getValidatedEmailAddresses();

if(cN.length==0){cV+=this.trc(o,ba);
}}cV+=this.trc(o,M);
}
if(!cK&&cS.isRuleTypeEnum(net.watchee.RuleTypeEnum.GPRS_LOST)){cV=this.trc(o,N);
}
if(cV!=null){cV+=this.trc(o,f);
var cM=null;
this.trackGui.askMsgBox(this.trc(A,X,cS.getRuleName()),cV,function(cX,cY){if(cX){this.saveButtonClicked(true);
}},this,cM,this.trc(m,v),this.trc(m,p));
return;
}}var cO=true;

if(cO){this.trackGui.sendAddRule(cS,this.responseOrExceptionOrTimeoutReceived,this,cS);
}else{this.trackGui.sendAddRule(cS,this.responseOrExceptionOrTimeoutReceived,this,cS);
}},getCurrentRuleTO:function(){if(this.trackGui.watchee==null)return null;
var da=this.ruleNameGroup.getCurrentRuleTO();
return da;
},isNewRuleTO:function(){if(this.trackGui.watchee==null)return null;
var db=this.ruleNameGroup.isNewRuleTO();
return db;
},deleteButtonClicked:function(){var dc=this.getCurrentRuleTO();

if(dc==null){return;
}this.trackGui.sendRemoveRule(dc,this.responseOrExceptionOrTimeoutReceived,this,dc);
},responseOrExceptionOrTimeoutReceived:function(dd,de,df){this.info("RulesWindow.js Received response: "+dd);
var dl=de;
var dk=org.xmlBlaster.util.PropTO;
var dn=null;
var dj=k;

if(dd==null){dn=this.trc(o,Y,df.timeoutSec);
}else if(dd.isException()){var di=dd.getPropValue(dk.KEY_ERRORCODE);
var dh=dd.getPropValue(dk.KEY_RESULT);
var dm=dd.getPropValue(dk.KEY_DATA);

if(di==R){dn=this.trc(u,T);
}else{dn=k;
dn+=L+di+bh;
dn+=V+dh;
dn+=d+dm+bg;
}}else{var dg=dd.getPropValue(dk.KEY_TASK);

if(dg==dk.VALUE_TASK_NAMED_ADDRULE){dn=this.trc(O,bb,dl.getRuleName());
this.preferredRuleNameToDisplay=dl.getRuleName();
this.preferredRuleTypeEnum=dl.getRuleTypeEnum();
this.requestRulesFromServer(null,null);
}else if(dg==dk.VALUE_TASK_NAMED_REMOVERULE){dn=this.trc(o,r);
this.preferredRuleNameToDisplay=null;
this.preferredRuleTypeEnum=null;
this.requestRulesFromServer(null,null);
}else{dn=this.trc(o,x,dd.getPropValue(dk.KEY_RESULT));
}}this.trackGui.infoMsgBox(dn+dj);
},clear:function(){this.ruleNameGroup.clear();
this.ruleTypeGroup.clear();
this.chooseDevicesGroup.clear();
this.timeFilterGroup.clear();
this.eventSinkGroup.clear();
this.trackRateGroup.clear();
},destroyPopup:function(){if(this.addGeofencesEventFunc!=null){this.trackGui.watchee.getEventManager().removeListener(h,this.addGeofencesEventFunc);
this.addGeofencesEventFunc=null;
}this.trackGui.getMyRoot().remove(this);
this.close();
this.trackGui=null;
}},destruct:function(){this.destroyPopup();
}});
})();
(function(){var m="ruleTO",k="middle",j="",h="execute",g="right",f="groupbox title",d="left",c="<New Rule>",b=")",a="button",D="All Alarm Rules",C="NEW_INSTANCE",B="Alarm Rules Filtered For %1",A="changeSelection",z="Delete",y="Button",x="16/rules/rules.png",w=" (",v="RuleName",u="Choose rule:",s="22/actions/document-save.png",t="input info",q="track.rules.RuleNameGroup",r="Rule name:",o="Save",p="label",n="22/places/user-trash.png";
qx.Class.define(q,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(E,F){qx.core.Object.call(this);
this.trackGui=E;
this.masterWindow=F||null;
this.groupBoxTitle=null;
this.programmaticSetSelected=false;
this.ruleNameSelectBox=null;
this.ruleNameTextField=null;
this.groupBoxTitle=null;
this.filterDevice=null;
},members:{setSpecificDevice:function(G){this.setTitle();
},getSpecificDevice:function(){return this.filterDevice;
},setTitle:function(){var H=this.trc(f,D);

if(this.filterDevice!=null){H=this.trc(f,B,this.filterDevice.getNiceName());
}
if(this.groupBoxTitle!=null)this.groupBoxTitle.setLegend(H);
return H;
},addRules:function(I){var I=I||null;
this.ruleNameSelectBox.removeAll();
this.listItemNew=this.__ox(null);

if(I==null){this.ruleNameSelectBox.setSelection([0]);
return;
}var J=I.getRules();
for(var i=0,l=J.length;i<l;i++){var K=J[i];
this.__ox(K);
}},__ox:function(L){var O=null;
var N=null;

if(L==null){O=this.trc(v,c);
N=C;
}else{O=L.getRuleName();
O+=w+L.getRuleTypeId()+b;
N=O;

if(N==net.watchee.RuleNameEnums.FALLBACK)O=net.watchee.RuleTypeEnum.FALLBACK.description;
}var M=this.__oA(O);

if(M!=null)return M;
M=new qx.ui.form.ListItem(O,xbGetIcon(x),N);
M.setUserData(m,L);
this.__oy(this.ruleNameSelectBox,M);
return M;
},__oy:function(P,Q){this.programmaticSetSelected=true;
P.add(Q);
this.programmaticSetSelected=false;
},__oz:function(R){var S=this.__oA(R);

if(S!=null){this.ruleNameSelectBox.remove(S);
return S;
}return null;
},__oA:function(T){if(T==null)return null;
var U=this.ruleNameSelectBox.getChildren();

for(var i=0,l=U.length;i<l;i++){var V=U[i];

if(T==V.getModel())return V;
}return null;
},createGroup:function(W){var bd=new qx.ui.groupbox.GroupBox(this.setTitle());
this.groupBox=bd;
this.groupBoxTitle=bd;
var X=new qx.ui.layout.Grid(6,4);
bd.setLayout(X);
bd.setContentPadding(W||12);
var bf=0;
var bb=0;
var bc=1;
var Y=2;
var ba=3;
X.setColumnAlign(bb,d,k);
X.setColumnAlign(bc,g,k);
X.setColumnWidth(bc,200);
X.setColumnAlign(Y,d,k);
bd.add(new qx.ui.basic.Label(this.trc(p,u)),{row:bf,column:bb});
this.ruleNameSelectBox=new qx.ui.form.SelectBox();
bd.add(this.ruleNameSelectBox,{row:bf,column:bc});
this.ruleNameSelectBox.addListener(A,function(e){if(this.programmaticSetSelected)return;
var bg=(e.getData().length==0)?null:e.getData()[0];
this.__oC(bg);
},this);
bf++;
this.ruleNameTextField=new qx.ui.form.TextField(j);
var be=new qx.ui.basic.Label(this.trc(t,r));
bd.add(be,{row:bf,column:bb});
bd.add(this.ruleNameTextField,{row:bf,column:bc});
this.ruleNameTextField.setEnabled(true);
bf=0;
this.deleteButton=new qx.ui.form.Button(this.trc(a,z),xbGetQxIcon(n));
this.deleteButton.setAlignX(g);
bd.add(this.deleteButton,{row:bf,column:Y});
this.deleteButton.setEnabled(false);
this.deleteButton.addListener(h,function(e){this.masterWindow.deleteButtonClicked();
},this);
bf++;
this.saveButton=new qx.ui.form.Button(this.trc(y,o),xbGetQxIcon(s));
this.saveButton.setEnabled(true);
bd.add(this.saveButton,{row:bf,column:Y});
this.saveButton.addListener(h,function(e){this.masterWindow.saveButtonClicked();
},this);
return bd;
},changeRuleNameSelection:function(bh){var bi=this.__oB(bh);

if(bi!=null){this.ruleNameSelectBox.setSelection([bi]);
return true;
}return false;
},__oB:function(bj){var bj=bj||null;

if(bj==null)return null;
var bl=this.ruleNameSelectBox.getChildren();

for(var i=0,l=bl.length;i<l;i++){var bm=bl[i];
var bk=bm.getUserData(m);

if(bk!=null&&bk.getRuleName()==bj)return bm;
}return null;
},__oC:function(bn){if(bn==null)return ;
var bo=bn.getUserData(m);
this.masterWindow.onChangeSelectedRuleName(bo);
},getCurrentRuleName:function(){var bp=this.getCurrentRuleTO();

if(bp==null)return null;
return bp.getRuleName();
},isNewRuleTO:function(){return this.getCurrentRuleTO()==null;
},getCurrentRuleTO:function(){var bq=this.ruleNameSelectBox.getSelection()[0];

if(bq!=null)return bq.getUserData(m);
return null;
},getRuleTOFromGui:function(){var br=this.getCurrentRuleTO();

if(br==null)br=new track.rulesmodel.RuleTO(this.trackGui,null);
br.setRuleName(this.ruleNameTextField.getValue());
br.setInfo(j);
return br;
},onChangeSelectedRuleName:function(bs){this.deleteButton.setEnabled(true);

if(bs==null){this.ruleNameTextField.setEnabled(true);
this.deleteButton.setEnabled(false);
this.ruleNameTextField.setValue(j);
}else if(bs.isRuleTypeEnum(net.watchee.RuleTypeEnum.FALLBACK)){this.ruleNameTextField.setEnabled(false);
}else{this.ruleNameTextField.setEnabled(true);
}
if(bs!=null)this.ruleNameTextField.setValue(bs.getRuleName());
},onChangeSelectedRuleTypeEnum:function(bt){if(this.groupBox==null)return;

if(net.watchee.RuleTypeEnum.FALLBACK.isSame(bt)){this.ruleNameTextField.setEnabled(false);
}else{this.ruleNameTextField.setEnabled(true);
}},clear:function(){}},destruct:function(){this.destroyPopup();
}});
})();
(function(){var m="",k="info",j="ruleType",h="ruleName",g="ruleTypeData",f="adminLoginName",e="Rule",d="creationTs",c="track.rulesmodel.RuleTO",b="modifiedTs",a="id";
qx.Class.define(c,{extend:qx.core.Object,construct:function(n,o){qx.core.Object.call(this);
this.trackGui=n;
this.geofenceTO=null;
this.filters=[];
this.eventSinks=[];
this.ruleAccountRelations=[];

if(org.xmlBlaster.util.isDefined(o)){this.propertyCollection=o;
}else{this.propertyCollection=new net.watchee.PropertyCollection(e);
}},members:{getRuleId:function(){return this.propertyCollection.getStr(a,m);
},getRuleName:function(){if(this.isRuleTypeEnum(net.watchee.RuleTypeEnum.FALLBACK)){return this.getRuleTypeEnum().getAutoRuleName();
}return this.propertyCollection.getStr(h,m);
},setRuleName:function(p){this.propertyCollection.addKeyValue(h,p);
},getRuleTypeId:function(){var q=this.propertyCollection.getStr(j,m);
return q;
},getRuleTypeEnum:function(r){var s=this.getRuleTypeId();
return net.watchee.RuleTypeEnum.lookup(s,r);
},isRuleTypeEnum:function(t){return this.getRuleTypeEnum().isSame(t);
},setRuleTypeEnum:function(u){if(u.constructor==net.watchee.RuleTypeEnum)this.propertyCollection.addKeyValue(j,u.getId());
else this.propertyCollection.addKeyValue(j,u);
},isFallbackRule:function(){if(net.watchee.RuleTypeEnum.FALLBACK.getAutoRuleName()==this.getRuleName()){return true;
}
if(this.isRuleTypeEnum(net.watchee.RuleTypeEnum.FALLBACK)){return true;
}return false;
},getRuleTypeData:function(){return this.propertyCollection.getStr(g,m);
},getRuleTypeDataNumber:function(v){return org.xmlBlaster.util.toNumber(this.getRuleTypeData(),v);
},setRuleTypeData:function(w){this.propertyCollection.addKeyValue(g,w);
},getInfo:function(){return this.propertyCollection.getStr(k,m);
},getInfoHashtable:function(){var x=this.propertyCollection.getStr(k,m);
var y=org.xmlBlaster.util.Hashtable.parseCSV(x);
return y;
},setInfo:function(z){if(z==null||z.length<1)this.propertyCollection.remove(k);
else this.propertyCollection.addKeyValue(k,z);
},setGeofenceTO:function(A){this.geofenceTO=A;
},getGeofenceTO:function(){return this.geofenceTO;
},setFilterTOs:function(B){this.filters=B;
},addFilterTO:function(C){this.filters.push(C);
},addFilterPC:function(D){var E=new track.rulesmodel.FilterTO(this.trackGui,D);
this.filters.push(E);
},getFilterTOs:function(){return this.filters;
},getFilterTOs:function(F){var F=F||null;
var H=[];

for(var i=0,l=this.filters.length;i<l;i++){var G=this.filters[i];

if(G.getFilterTypeEnum().isSame(F))H.push(G);
}return H;
},addEventSinkTO:function(I){this.eventSinks.push(I);
},addEventSinkTOs:function(J){for(var i=0,l=J.length;i<l;i++){this.eventSinks.push(J[i]);
}},setEventSinkTOs:function(K){this.eventSinks=K;
},addEventSinkPC:function(L){var M=new track.rulesmodel.EventSinkTO(this.trackGui,L);
this.eventSinks.push(M);
},getEventSinkTOs:function(){return this.eventSinks;
},getEventSinkTOs:function(N){var N=N||null;
var P=[];

for(var i=0,l=this.eventSinks.length;i<l;i++){var O=this.eventSinks[i];

if(O.getEventSinkTypeEnum().isSame(N))P.push(O);
}return P;
},getPropertyCollectionOfRule:function(){return this.propertyCollection;
},getPropertyCollectionArr:function(){var T=[];
T.push(this.propertyCollection);

if(this.geofenceTO!=null){T.push(this.geofenceTO.getPropertyCollection());
}
for(var i=0,l=this.filters.length;i<l;i++){var S=this.filters[i];
T.push(S.getPropertyCollection());
}
for(var i=0,l=this.eventSinks.length;i<l;i++){var Q=this.eventSinks[i];
T.push(Q.getPropertyCollection());
}
for(var i=0,l=this.ruleAccountRelations.length;i<l;i++){var R=this.ruleAccountRelations[i];
T.push(R.getPropertyCollection());
}return T;
},getPropertyCollections:function(){var U=new net.watchee.PropertyCollections();
U.pcList=this.getPropertyCollectionArr();
return U;
},getCreationTs:function(){return this.propertyCollection.getStr(d,m);
},getModifiedTs:function(){return this.propertyCollection.getStr(b,m);
},setRuleAccountRelationTOs:function(V){this.ruleAccountRelations=V;
},addRuleAccountRelationTO:function(W){this.ruleAccountRelations.push(W);
},addRuleAccountRelationPC:function(X){var Y=new track.rulesmodel.RuleAccountRelationTO(this.trackGui,X);
this.ruleAccountRelations.push(Y);
},getRuleAccountRelationTOs:function(){return this.ruleAccountRelations;
},getDeviceInfoArr:function(){var ba=[];

for(var i=0,l=this.ruleAccountRelations.length;i<l;i++){var bb=this.ruleAccountRelations[i];

if(bb.getDeviceInfo()!=null)ba.push(bb.getDeviceInfo());
}return ba;
},getRuleAccountRelationTO:function(bc){if(bc==null)return null;

for(var i=0,l=this.ruleAccountRelations.length;i<l;i++){if(this.ruleAccountRelations[i].getLoginName()==bc)return this.ruleAccountRelations[i];
}return null;
},hasTargetDevice:function(bd){if(bd==null)return false;

for(var i=0,l=this.ruleAccountRelations.length;i<l;i++){if(this.ruleAccountRelations[i].getLoginName()==bd)return true;
}return false;
},getRuleAccountLoginNames:function(){var be=[];

for(var i=0,l=this.ruleAccountRelations.length;i<l;i++){be.push(this.ruleAccountRelations[i].getLoginName());
}return be;
},getAdminLoginName:function(){return this.propertyCollection.getStr(f,m);
}},destruct:function(){this._disposeFields();
this._disposeObjects();
}});
})();
(function(){var h="",g="filterType",f="info",e="expression",d="modifiedTs",c="creationTs",b="Filter",a="track.rulesmodel.FilterTO";
qx.Class.define(a,{extend:qx.core.Object,construct:function(i,j){qx.core.Object.call(this);
this.trackGui=i;
if(org.xmlBlaster.util.isDefined(j)){this.propertyCollection=j;
}else{this.propertyCollection=new net.watchee.PropertyCollection(b);
}this.infoMapCache=null;
},members:{getExpression:function(){return this.propertyCollection.getStr(e,h);
},getCronExpression:function(){var k=new net.watchee.CronExpression(this.getExpression(),this.getInfoMap());
return k;
},setExpression:function(l){this.propertyCollection.addKeyValue(e,l);
},getFilterTypeId:function(){return this.propertyCollection.getStr(g,h);
},getFilterTypeEnum:function(){var m=this.propertyCollection.getStr(g,h);
return net.watchee.FilterTypeEnum.lookup(m);
},setFilterTypeEnum:function(n){var o=null;

if(n===undefined||n==null){o=this.propertyCollection.remove(g);
}else{o=this.propertyCollection.addKeyValue(g,n.getId());
}return (o==null)?null:o.getValue();
},getInfoMap:function(){if(this.infoMapCache==null){this.infoMapCache=org.xmlBlaster.util.Hashtable.parseCSV(this.getInfo());
}return this.infoMapCache;
},setInfoMap:function(p){var p=p||null;
this.infoMapCache=null;

if(p==null){this.setInfo(h);
}else{this.setInfo(p.toCSV());
}},getInfo:function(){return this.propertyCollection.getStr(f,h);
},setInfo:function(q){this.propertyCollection.addKeyValue(f,q);
},getPropertyCollection:function(){return this.propertyCollection;
},getCreationTs:function(){return this.propertyCollection.getStr(c,h);
},getModifiedTs:function(){return this.propertyCollection.getStr(d,h);
}},destruct:function(){this._disposeFields();
this._disposeObjects();
}});
})();
(function(){var j="",i="info",h="geofenceNumber",g="loginName",f="accountId",e="RuleAccountRelation",d="creationTs",c="modifiedTs",b="ruleId",a="track.rulesmodel.RuleAccountRelationTO";
qx.Class.define(a,{extend:qx.core.Object,construct:function(k,l){qx.core.Object.call(this);
this.trackGui=k;
if(org.xmlBlaster.util.isDefined(l)){this.propertyCollection=l;
}else{this.propertyCollection=new net.watchee.PropertyCollection(e);
}},members:{getLoginName:function(){return this.propertyCollection.getStr(g,j);
},getBuddyTO:function(){var m=this.trackGui.watchee.getBuddyManager().getBuddyOrMyself(this.getLoginName());
return m;
},getDevice:function(){var n=this.trackGui.watchee.getDevice(this.getLoginName());
return n;
},getDeviceInfo:function(){var o=this.getDevice();

if(o!=null){return o.getDeviceInfo();
}return null;
},getDeviceEnum:function(){var p=this.getDeviceInfo();

if(p!=null){return p.deviceEnum;
}return null;
},setLoginName:function(q){this.propertyCollection.addKeyValue(g,q);
},getAccountId:function(){return this.propertyCollection.getStr(f,j);
},getRuleId:function(){return this.propertyCollection.getStr(b,j);
},getInfo:function(){return this.propertyCollection.getStr(i,j);
},getInfoHashtable:function(){var r=this.propertyCollection.getStr(i,j);
var s=org.xmlBlaster.util.Hashtable.parseCSV(r);
return s;
},setInfo:function(t){if(t==null||t.length<1)this.propertyCollection.remove(i);
else this.propertyCollection.addKeyValue(i,t);
},addInfoCsv:function(u,v){if(u==null||u.length<1)return;
var x=this.getInfoHashtable();
var w=x.put(u,v);
this.setInfo(x.toCSV());
return w;
},removeInfoCsv:function(y){if(y==null||y.length<1)return;
var A=this.getInfoHashtable();
var z=A.remove(y);
this.setInfo(A.toCSV());
return z;
},getGeofenceNumber:function(B){var B=B||1;
var C=this.getInfoHashtable();
var D=C.getNumber(h,B);
return D;
},setGeofenceNumber:function(E){return this.addInfoCsv(h,E);
},removeGeofenceNumber:function(){return this.removeInfoCsv(h);
},getPropertyCollection:function(){return this.propertyCollection;
},getCreationTs:function(){return this.propertyCollection.getStr(d,j);
},getModifiedTs:function(){return this.propertyCollection.getStr(c,j);
}},destruct:function(){this._disposeFields();
this._disposeObjects();
}});
})();
(function(){var m="label",k="ruleTypeEnum",j="",h="geofenceTO",g=",",f="Fence No.:",d="VT10",c="SPT10",b="changeSelection",a="middle",H="TK102",G=", %1 only",F="The device supports 25 geofence-leave rules simulatneously (Technical note: 1 is mapped to event-ID 75)",E=")",D="Speed km/h:",C="Ping intervall seconds:",B="16/rules/ruleType.png",A=" (",z="Geofence to use:",y="track.rules.RuleTypeGroup",t=", %1/%2 only",u="16/rules/geofence.png",r="info@md-trans.de13",s="getSelectedRuleTypeEnum is null",p=", %1/%2/%3 only",q="right",n="Event to use:",o="Rule Type",v="tooltip",w="groupbox title",x="left";
qx.Class.define(y,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(I,J){qx.core.Object.call(this);
this.trackGui=I;
this.masterWindow=J||null;
this.programmaticSetSelected=false;
this.groupBox=null;
this.ruleTypesSelectBox=null;
this.geofenceNameSelectBox=null;
this.geofenceDrawer=null;
this.geofenceIsShown=false;
this.COL0=0;
this.COL1=1;
this.debugGF=true;
},members:{setSpecificDevice:function(K){if(org.xmlBlaster.util.isDefined(K)){this.filterDevice=K;
var L=new Array(K.getDeviceId());
this.trackGui.getRules(L);
}else{this.filterDevice=null;
var L=[];
var M=this.trackGui.watchee.getBuddyManager().getFriendOfList(net.watchee.BuddyPermissionTO.PERMISSION_CFG);
for(var i=0,l=M.length;i<l;i++){L.push(M[i].getLoginName());
}this.trackGui.getRules(L);
}this.setTitle();
},setTitle:function(){var N=this.trc(w,o);

if(this.groupBox!=null)this.groupBox.setLegend(N);
return N;
},addGeofences:function(O){var O=O||null;
this.geofenceNameSelectBox.removeAll();

if(O==null)return;
var R=O.getGeofences();

for(var i=0,l=R.length;i<l;i++){var P=R[i];
var Q=new qx.ui.form.ListItem(P.getName(),xbGetIcon(u));
Q.setUserData(h,P);
this.__oF(this.geofenceNameSelectBox,Q);
}},__oD:function(){if(this.geofenceDrawer!=null){this.geofenceDrawer.clearAll();
this.geofenceDrawer=null;
}},__oE:function(S){var T=T||null;
this.__oD();
this.geofenceDrawer=this.trackGui.watchee.getMapManager().createGeofenceDrawer();
this.geofenceDrawer.draw(S);
},createGroup:function(U){var ba=new qx.ui.groupbox.GroupBox(this.setTitle());
this.groupBox=ba;
var W=new qx.ui.layout.Grid(6,4);
ba.setLayout(W);
ba.setContentPadding(U||12);
var bd=0;
W.setColumnAlign(this.COL0,x,a);
W.setColumnAlign(this.COL1,q,a);
W.setColumnWidth(this.COL1,290);
bd=0;
ba.add(new qx.ui.basic.Label(this.trc(m,n)),{row:bd,column:this.COL0});
this.ruleTypesSelectBox=new qx.ui.form.SelectBox();
this.defaultTypeItem=null;

for(var i=0,l=net.watchee.RuleTypeEnums.length;i<l;i++){var bb=net.watchee.RuleTypeEnums[i];

if(bb.isSame(net.watchee.RuleTypeEnum.GEOFENCE_ENTER)||bb.isSame(net.watchee.RuleTypeEnum.BATTERY_LOW)||bb.isSame(net.watchee.RuleTypeEnum.GEOFENCE_LEAVE)||bb.isSame(net.watchee.RuleTypeEnum.MOVED)||bb.isSame(net.watchee.RuleTypeEnum.GPSSIGNAL_LOST)||bb.isSame(net.watchee.RuleTypeEnum.GPSSIGNAL_OK)||bb.isSame(net.watchee.RuleTypeEnum.GPRS_LOST)||bb.isSame(net.watchee.RuleTypeEnum.OVERSPEED)||bb.isSame(net.watchee.RuleTypeEnum.SMS_OPERATION)||bb.isSame(net.watchee.RuleTypeEnum.ENTER_SLEEPMODE)||bb.isSame(net.watchee.RuleTypeEnum.ENTER_AWAKE)||bb.isSame(net.watchee.RuleTypeEnum.INPUT1_ON)||bb.isSame(net.watchee.RuleTypeEnum.INPUT1_OFF)||bb.isSame(net.watchee.RuleTypeEnum.INPUT2_ON)||bb.isSame(net.watchee.RuleTypeEnum.INPUT2_OFF)||bb.isSame(net.watchee.RuleTypeEnum.INPUT3_ON)||bb.isSame(net.watchee.RuleTypeEnum.INPUT3_OFF)||bb.isSame(net.watchee.RuleTypeEnum.INPUT4_ON)||bb.isSame(net.watchee.RuleTypeEnum.INPUT4_OFF)||bb.isSame(net.watchee.RuleTypeEnum.SCHEDULED_EVENT)||bb.isSame(net.watchee.RuleTypeEnum.SOS_BUTTON)){var bc=j;

if(bb.isSame(net.watchee.RuleTypeEnum.ENTER_SLEEPMODE)||bb.isSame(net.watchee.RuleTypeEnum.GEOFENCE_ENTER)||bb.isSame(net.watchee.RuleTypeEnum.ENTER_AWAKE))bc=this.trc(m,t,net.watchee.DeviceInfo.deviceEnumToMarketingName(c,this.trackGui.getMyOemName()),net.watchee.DeviceInfo.deviceEnumToMarketingName(d,this.trackGui.getMyOemName()));

if(bb.isSame(net.watchee.RuleTypeEnum.MOVED))bc=this.trc(m,G,net.watchee.DeviceInfo.deviceEnumToMarketingName(H,this.trackGui.getMyOemName()));

if(bb.isSame(net.watchee.RuleTypeEnum.BATTERY_LOW))bc=this.trc(m,p,net.watchee.DeviceInfo.deviceEnumToMarketingName(H,this.trackGui.getMyOemName()),net.watchee.DeviceInfo.deviceEnumToMarketingName(c,this.trackGui.getMyOemName()),net.watchee.DeviceInfo.deviceEnumToMarketingName(d,this.trackGui.getMyOemName()));

if(bb.isSame(net.watchee.RuleTypeEnum.INPUT1_ON)||bb.isSame(net.watchee.RuleTypeEnum.INPUT1_OFF)||bb.isSame(net.watchee.RuleTypeEnum.INPUT2_ON)||bb.isSame(net.watchee.RuleTypeEnum.INPUT2_OFF)||bb.isSame(net.watchee.RuleTypeEnum.INPUT3_ON)||bb.isSame(net.watchee.RuleTypeEnum.INPUT3_OFF)||bb.isSame(net.watchee.RuleTypeEnum.INPUT4_ON)||bb.isSame(net.watchee.RuleTypeEnum.INPUT4_OFF)){bc=this.trc(m,G,net.watchee.DeviceInfo.deviceEnumToMarketingName(d,this.trackGui.getMyOemName()));
}var Y=bb.getDescription()+A+bb.getId()+bc+E;
var V=new qx.ui.form.ListItem(Y,xbGetIcon(B),bb.getId());
V.setUserData(k,bb);
this.ruleTypesSelectBox.add(V);

if(bb.isSame(net.watchee.RuleTypeEnum.SOS_BUTTON))this.defaultTypeItem=V;
}}ba.add(this.ruleTypesSelectBox,{row:bd,column:this.COL1});
this.ruleTypesSelectBox.addListener(b,function(e){if(this.programmaticSetSelected)return ;
var be=(e.getData().length==0)?null:e.getData()[0];
this.__oJ(be);
},this);
bd++;
this.ruleTypeDataBoxGeofence=new qx.ui.container.Composite(new qx.ui.layout.HBox(5));
this.ruleTypeDataBoxGeofence.setUserData(m,this.trc(m,z));
this.geofenceNameSelectBox=new qx.ui.form.SelectBox();
this.geofenceNameSelectBox.setMaxHeight(20);
this.geofenceNameSelectBox.addListener(b,function(e){if(this.programmaticSetSelected)return ;
var bg=(e.getData().length==0)?null:e.getData()[0];

if(bg==null)return ;
var bf=bg.getUserData(h);
this.__oE(bf.getCoordinates());
},this);
this.ruleTypeDataBoxGeofence.add(this.geofenceNameSelectBox);
this.geofenceSpinnLabel=new qx.ui.basic.Label(this.trc(m,f));
this.geofenceSpinnLabel.setPaddingTop(6);
var X=this.trc(v,F);
this.geofenceSpinnLabel.setToolTipText(X);
this.ruleTypeDataBoxGeofence.add(new qx.ui.core.Spacer(8));
this.ruleTypeDataBoxGeofence.add(this.geofenceSpinnLabel);
this.geofenceSpinnLabel.exclude();
this.ruleTypeDataBoxOverspeed=new qx.ui.container.Composite(new qx.ui.layout.HBox(5));
this.ruleTypeDataBoxOverspeed.setUserData(m,this.trc(m,D));
this.overspeedSpinner=new qx.ui.form.Spinner(10,80,220);
this.overspeedSpinner.set({singleStep:1,pageStep:10});
this.ruleTypeDataBoxOverspeed.add(this.overspeedSpinner);
this.ruleTypeDataBoxPingIntervall=new qx.ui.container.Composite(new qx.ui.layout.HBox(5));
this.ruleTypeDataBoxPingIntervall.setUserData(m,this.trc(m,C));
this.pingIntervalSecSpinner=new qx.ui.form.Spinner(30,120,100000);
this.pingIntervalSecSpinner.set({singleStep:1,pageStep:10});
this.ruleTypeDataBoxPingIntervall.add(this.pingIntervalSecSpinner);
this.dataLabel=new qx.ui.basic.Label(j);
ba.add(this.dataLabel,{row:bd,column:this.COL0});
ba.add(this.ruleTypeDataBoxGeofence,{row:bd,column:this.COL1});
ba.add(this.ruleTypeDataBoxOverspeed,{row:bd,column:this.COL1});
ba.add(this.ruleTypeDataBoxPingIntervall,{row:bd,column:this.COL1});
ba.setMinHeight(85);

if(this.defaultTypeItem!=null){this.__oG(this.ruleTypesSelectBox,this.defaultTypeItem);
}return ba;
},__oF:function(bh,bi){this.programmaticSetSelected=true;
bh.add(bi);
this.programmaticSetSelected=false;
},__oG:function(bj,bk){this.programmaticSetSelected=true;
bj.setSelection([bk]);
this.programmaticSetSelected=false;
},__oH:function(bl){this.__oI();
this.dataLabel.setValue(bl.getUserData(m));
bl.show();
},__oI:function(){this.dataLabel.setValue(j);
this.ruleTypeDataBoxGeofence.exclude();
this.ruleTypeDataBoxOverspeed.exclude();
this.ruleTypeDataBoxPingIntervall.exclude();
},__oJ:function(bm){if(bm==null)return ;
var bn=bm.getUserData(k);
this.masterWindow.onChangeSelectedRuleTypeEnum(bn);
},_displayEventIDs:function(bo,bp,bq){var bo=bo||null;
var bq=bq||null;
var bp=bp||null;

if(bo!=null&&bp==null){bp=bo.getRuleTypeEnum();
}
if(bo==null&&bp==null){return;
}
if(!bp.isGeofenceType()){return ;
}var bx=j;
var bu=j;

if(bo==null&&bq==null){bq=this.masterWindow.chooseDevicesGroup.getSelectedBuddyTOs();

if(bq.length==0)bq=null;
}
if(bo==null&&bq==null){this.geofenceSpinnLabel.setValue(this.trc(m,f));
this.geofenceSpinnLabel.show();
}else if(bq!=null){for(var i=0,l=bq.length;i<l;i++){var bw=bq[i];
var bt=bw.getDeviceInfo();

if(bt.isWonde()){var bs=-1;

if(bo!=null&&bo.hasTargetDevice(bw.getLoginName())&&bo.getRuleTypeEnum().isSame(bp)){bs=bo.getRuleAccountRelationTO(bw.getLoginName()).getGeofenceNumber(-1);
}
if(this.debugGF&&bw.getLoginName()==r){this.info(bw.getLoginName()+" --> "+bs);
}
if(bs==-1){var bz=this.masterWindow.getUsedGeofenceNumbers(bw.getDevice());
bs=this.masterWindow.getFreeGeofenceNumber(bz);
}
if(bx.length>0)bx+=g;
bx+=bs;

if(bu.length>0)bu+=g;
var by=net.watchee.RuleTypeEnum.GEOFENCE_LEAVE.isSame(bp);
bu+=this.masterWindow.fromGeofenceNumberToEventIDWonde(bs,by);
}}}else{var bv=bo.getRuleAccountRelationTOs();

for(var i=0,l=bv.length;i<l;i++){var br=bv[i];
var bt=br.getDeviceInfo();

if(bt.isWonde()){if(bx.length>0)bx+=g;
var bs=br.getGeofenceNumber(1);
bx+=bs;

if(bu.length>0)bu+=g;
var by=net.watchee.RuleTypeEnum.GEOFENCE_LEAVE.isSame(bo.getRuleTypeEnum());
bu+=this.masterWindow.fromGeofenceNumberToEventIDWonde(bs,by);
}}}this.geofenceSpinnLabel.setValue(this.trc(m,f)+bu);
this.geofenceSpinnLabel.show();
},onChangeSelectedRuleName:function(bA){this.ruleTypesSelectBox.setEnabled(true);

if(bA==null){if(this.defaultTypeItem!=null){this.onChangeSelectedRuleTypeEnum(this.defaultTypeItem.getUserData(k));
}return;
}if(bA.isRuleTypeEnum(net.watchee.RuleTypeEnum.FALLBACK)){this.masterWindow.onChangeSelectedRuleTypeEnum(net.watchee.RuleTypeEnum.FALLBACK);
}else{if(bA.getRuleTypeEnum().isGeofenceType()){this.selectedGeofenceTO(bA.getGeofenceTO().getName());
this._displayEventIDs(bA);
}else if(bA.getRuleTypeEnum().isSame(net.watchee.RuleTypeEnum.OVERSPEED)){this.overspeedSpinner.setValue(bA.getRuleTypeDataNumber(80));
}else if(bA.getRuleTypeEnum().isSame(net.watchee.RuleTypeEnum.GPRS_LOST)){this.pingIntervalSecSpinner.setValue(bA.getRuleTypeDataNumber(120));
}this.masterWindow.onChangeSelectedRuleTypeEnum(bA.getRuleTypeEnum());
}this._displayEventIDs(bA);
},onChangeSelectedRuleTypeEnum:function(bB,bC){var bD=this.__oK(bB);

if(bD!=null){this.ruleTypesSelectBox.setSelection([bD]);
}if(bB.isGeofenceType()){this.__oH(this.ruleTypeDataBoxGeofence);
this._displayEventIDs(bC,bB,this.masterWindow.chooseDevicesGroup.getSelectedBuddyTOs());
var bE=this.getSelectedGeofenceTO();

if(bE!=null){this.__oE(bE.getCoordinates());
}}else if(bB.isSame(net.watchee.RuleTypeEnum.OVERSPEED)){this.__oH(this.ruleTypeDataBoxOverspeed);
}else if(bB.isSame(net.watchee.RuleTypeEnum.GPRS_LOST)){this.__oH(this.ruleTypeDataBoxPingIntervall);
}else{this.__oD();
this.__oI();
}
if(net.watchee.RuleTypeEnum.FALLBACK.isSame(bB)){this.ruleTypesSelectBox.setEnabled(false);
}else{this.ruleTypesSelectBox.setEnabled(true);
}},onChangeSelectedDevices:function(bF,bG,bH){this._displayEventIDs(bG,bH,bF);
},getCurrentRuleTypeEnum:function(){return this.getSelectedRuleTypeEnum();
},getSelectedRuleTypeEnum:function(){var bI=this.ruleTypesSelectBox.getSelection()[0];

if(bI!=null){return bI.getUserData(k);
}this.trackGui.errorMsgBoxDeveloper(s);
return null;
},__oK:function(bJ){if(bJ==null)return null;
var bL=this.ruleTypesSelectBox.getChildren();

for(var i=0,l=bL.length;i<l;i++){var bM=bL[i];
var bK=bM.getUserData(k);

if(bK!=null&&bK.isSame(bJ))return bM;
}return null;
},getSelectedGeofenceTO:function(){var bO=this.geofenceNameSelectBox.getSelection()[0];

if(bO!=null){var bN=bO.getUserData(h);
return bN;
}return null;
},__oL:function(bP){var bP=bP||null;

if(bP==null)return null;
var bR=this.geofenceNameSelectBox.getChildren();

for(var i=0,l=bR.length;i<l;i++){var bS=bR[i];
var bQ=bS.getUserData(h);

if(bQ!=null&&bQ.getName()==bP)return bS;
}return null;
},selectedGeofenceTO:function(bT){var bU=this.__oL(bT);

if(bU!=null)this.geofenceNameSelectBox.setSelection([bU]);
},fillRuleTOFromGui:function(bV){bV.setGeofenceTO(null);
bV.setRuleTypeData(null);

if(!this.ruleTypesSelectBox.isEnabled()){if(bV.isFallbackRule()){bV.setRuleTypeEnum(net.watchee.RuleTypeEnum.FALLBACK);
}return bV;
}var bW=this.getSelectedRuleTypeEnum();
bV.setRuleTypeEnum(bW);

if(bW.isGeofenceType()){bV.setGeofenceTO(this.getSelectedGeofenceTO());
}else if(bW.isSame(net.watchee.RuleTypeEnum.OVERSPEED)){bV.setRuleTypeData(this.overspeedSpinner.getValue());
}else if(bW.isSame(net.watchee.RuleTypeEnum.GPRS_LOST)){bV.setRuleTypeData(this.pingIntervalSecSpinner.getValue());
}else{}
if(!bW.isGeofenceType()){var bX=bV.getRuleAccountRelationTOs();

for(var i=0,l=bX.length;i<l;i++){var bY=bX[i];
bY.removeGeofenceNumber();
}}return bV;
},clear:function(){this.__oD();
}},destruct:function(){this.destroyPopup();
}});
})();
(function(){var h="buddyTO",g="track.rules.ChooseDevicesGroup",f="multi",d="groupbox title",c="changeSelection",b="on",a="Choose Devices";
qx.Class.define(g,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(j,k){qx.core.Object.call(this);
this.trackGui=j;
this.masterWindow=k||null;
this.configList=null;
this.programmaticSetSelected=false;
this.groupBox=null;
},members:{createGroup:function(m){var r=new qx.ui.groupbox.GroupBox(this.trc(d,a));
this.groupBox=r;
var n=new qx.ui.layout.Basic();
r.setLayout(n);
r.setContentPadding(m||12);
this.configList=new qx.ui.form.List;
this.configList.setScrollbarX(b);
this.configList.set({height:170,width:160,selectionMode:f,dragSelection:true});
var o=this.trackGui.watchee.getBuddyManager().getFriendOfList(net.watchee.BuddyPermissionTO.PERMISSION_CFG,true);

for(var i=0,l=o.length;i<l;i++){var q=o[i];
var p=new qx.ui.form.ListItem(q.getAliasAndLoginName());
p.setUserData(h,q);
this.configList.add(p);
}this.configList.addListener(c,function(e){if(this.programmaticSetSelected){return;
}var s=e.getData();
this.__oM(s);
},this);
r.add(this.configList);
return r;
},getSelectedBuddyTOs:function(t){var u=[];
var t=t||this.configList.getSelection();

for(var i=0,l=t.length;i<l;i++){var w=t[i];
var v=w.getUserData(h);

if(v!=null){u.push(v);
}}return u;
},__oM:function(x){var y=this.getSelectedBuddyTOs(x);
this.masterWindow.onChangeSelectedDevices(y);
},onChangeSelectedDevices:function(z){},getRuleAccountRelationsTOFromGui:function(){var A=this.configList.getSelection();
var B=[];

for(var i=0,l=A.length;i<l;i++){var D=A[i];
var C=D.getUserData(h);
var E=C.getDevice();
var F=new track.rulesmodel.RuleAccountRelationTO(this.trackGui,null);
F.setLoginName(C.getLoginName());
this.masterWindow.setProperGeofenceNumber(E,F);
B.push(F);
}return B;
},containsDeviceType:function(G){var H=this.configList.getSelection();

for(var i=0,l=H.length;i<l;i++){var K=H[i];
var J=K.getUserData(h);
var I=J.getDeviceInfo();

if(I.getDeviceEnum()==G){return true;
}}return false;
},supportsSmsConfigurationOnly:function(){var L=this.configList.getSelection();

for(var i=0,l=L.length;i<l;i++){var O=L[i];
var N=O.getUserData(h);

if(N==null)continue;
var M=N.getDeviceInfo();

if(M.supportsSmsConfigurationOnly()){return true;
}}return false;
},__oN:function(P){var P=P||null;

if(P==null)return null;
var R=this.configList.getChildren();

for(var i=0,l=R.length;i<l;i++){var S=R[i];
var Q=S.getUserData(h);

if(Q!=null&&Q.getLoginName()==P)return S;
}return null;
},onChangeSelectedRuleName:function(T){this.programmaticSetSelected=true;
this.configList.resetSelection();
this.programmaticSetSelected=false;

if(T==null){if(this.masterWindow.preferredDevice!=null){this.selectLoginName([this.masterWindow.preferredDevice.getLoginName()]);
}return;
}var U=T.getRuleAccountLoginNames();
this.selectLoginName(U,false);
},selectLoginName:function(V,W){var V=V||[];

if(W)this.configList.resetSelection();

if(V.length==0){return;
}var Y=[];

for(var i=0,l=V.length;i<l;i++){var X=V[i];
var ba=this.__oN(X);
Y.push(ba);
}
if(Y.length>0){this.programmaticSetSelected=true;
this.configList.setSelection(Y);
this.programmaticSetSelected=false;
return true;
}return false;
},onChangeSelectedRuleTypeEnum:function(bb){if(this.groupBox==null)return;
},clear:function(){}},destruct:function(){}});
})();
(function(){var m="Weekday",k="MON",j="hidden",h="visible",g="changeValue",f="TimeSlider",d="weekDay",c="THU",b="SAT",a="TUE",H="12/sliderKnobStart.png",G="Monday",F="Complete day",E="WED",D="Until: ",C="Filter",B="Friday",A="Thursday",z="From: ",y="CheckBox label",t="12/sliderKnobUntil.png",u="Saturday",r="Tuesday",s="SUN",p="track.rules.TimeFilterGroup",q="Sunday",n="label",o="Wednesday",v="groupbox title",w="FRI",x="<font color='#444444'>Applies for time zone: %1</font>";
qx.Class.define(p,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(I){qx.core.Object.call(this);
this.trackGui=I;
this.groupBox=null;
this.fromDayTimeSlider=null;
this.untilDayTimeSlider=null;
this.completeDayCheckBox=null;
this.timeZoneLabel=null;
this.currentSelectedRuleTypeEnum=null;
},members:{createGroup:function(J){var O=new qx.ui.groupbox.GroupBox(this.trc(v,C));
this.groupBox=O;
var M=new qx.ui.layout.VBox(0);
O.setLayout(M);
O.setContentPadding(J||12);
var S=new qx.ui.container.Composite(new qx.ui.layout.VBox(2));
var K=new qx.ui.container.Composite(new qx.ui.layout.HBox(4));
var N=new qx.ui.container.Composite(new qx.ui.layout.VBox(0));
var P=new qx.ui.container.Composite(new qx.ui.layout.VBox(0));
var Q=new qx.ui.container.Composite(new qx.ui.layout.VBox(0));
O.add(S);
this.timeZoneLabel=new qx.ui.basic.Label(this.trc(n,x,this.trackGui.getMyAccountTO().getTimezone()));
this.timeZoneLabel.setRich(true);
this.timeZoneLabel.setHeight(9);
this.timeZoneLabel.setPaddingTop(0);
this.timeZoneLabel.setMarginTop(0);
this.timeZoneLabel.setMarginBottom(8);
this.timeZoneLabel.setVisibility(j);
O.add(this.timeZoneLabel);
O.add(K);
K.add(N);
K.add(P);
K.add(Q);
this.completeDayCheckBox=new qx.ui.form.CheckBox(this.trc(y,F));
this.completeDayCheckBox.setValue(true);
this.completeDayCheckBox.addListener(g,function(e){var T=e.getData();
this.fromDayTimeSlider.setEnabled(!T);
this.untilDayTimeSlider.setEnabled(!T);
this.timeZoneLabel.setVisibility(T?j:h);
},this);
S.add(this.completeDayCheckBox);
var R=200;
this.fromDayTimeSlider=new track.util.DayTimeSlider(xbGetIcon(H));
S.add(this.fromDayTimeSlider.createTimer(this.trc(f,z),6,R));
this.fromDayTimeSlider.setEnabled(!this.completeDayCheckBox.getValue());
this.untilDayTimeSlider=new track.util.DayTimeSlider(xbGetIcon(t));
S.add(this.untilDayTimeSlider.createTimer(this.trc(f,D),18,R));
this.untilDayTimeSlider.setEnabled(!this.completeDayCheckBox.getValue());
track.util.DayTimeSlider.knobIcon=null;
S.add(new qx.ui.core.Spacer(1,5));
this.weekDays=[{cronId:k,label:this.trc(m,G),checkBox:null},{cronId:a,label:this.trc(m,r),checkBox:null},{cronId:E,label:this.trc(m,o),checkBox:null},{cronId:c,label:this.trc(m,A),checkBox:null},{cronId:w,label:this.trc(m,B),checkBox:null},{cronId:b,label:this.trc(m,u),checkBox:null},{cronId:s,label:this.trc(m,q),checkBox:null}];

for(var i=0,l=this.weekDays.length;i<l;i++){var L=new qx.ui.form.CheckBox(this.weekDays[i].label);
this.weekDays[i].checkBox=L;
L.setUserData(d,this.weekDays[i]);
L.addListener(g,function(e){var U=e.getData();
var V=L.getUserData(d);
},this);

if(i<3)N.add(L);
else if(i<5)P.add(L);
else Q.add(L);
}return O;
},getFiltersTOFromGui:function(){var bh=[];
var bc=false;
var bm=[];
var Y=[];
var bj=this.completeDayCheckBox.getValue();
var bf=0;
var bg=this.fromDayTimeSlider.getNumericTimeValue()>=this.untilDayTimeSlider.getNumericTimeValue();
var ba=!bg;
for(var i=0,l=this.weekDays.length;i<l;i++){var bn=this.weekDays[i];
var bi=bn.checkBox.getValue();

if(bj&&bi){bf++;
}if(bj){var bd=this.weekDays[this.weekDays.length-1].checkBox.getValue();

if(bi){if(!bc){if(bn.cronId==k&&bd){}else{bm.push(bn.cronId);
}bc=true;
}}else{if(bc||bn.cronId==k&&bd){Y.push(bn.cronId);
bc=false;
}}}else{if(ba){if(bi){bm.push(bn.cronId);
Y.push(bn.cronId);
}}else{if(bi){bm.push(bn.cronId);

if(i<(l-1))Y.push(this.weekDays[i+1].cronId);
else Y.push(k);
}}}}var X=(bf==7);

if(X||bm.length>0){var bb=new track.rulesmodel.FilterTO(this.trackGui,null);
var be=new net.watchee.CronExpression(null);
be.setForever(X);

if(bj){be.setCompleteDay(true);
}else{be.setHour(this.fromDayTimeSlider.getHourStr());
be.setMinute(this.fromDayTimeSlider.getMinuteStr());
}be.setDayOfWeek(bm);
var W=be.getCronExpressionStr();
bb.setExpression(W);
bb.setInfoMap(be.getFlagMap());
bb.setFilterTypeEnum(net.watchee.FilterTypeEnum.CRON);
bh.push(bb);
var bk=net.watchee.RuleTypeEnum.SCHEDULED_EVENT.isSame(this.currentSelectedRuleTypeEnum);

if(!X&&!bk){var bl=new track.rulesmodel.FilterTO(this.trackGui,null);
var be=new net.watchee.CronExpression(null);
be.setForever(X);

if(bj){be.setCompleteDay(true);
}else{be.setHour(this.untilDayTimeSlider.getHourStr());
be.setMinute(this.untilDayTimeSlider.getMinuteStr());
}be.setDayOfWeek(Y);
var W=be.getCronExpressionStr();
bl.setExpression(W);
bl.setInfoMap(be.getFlagMap());
bl.setFilterTypeEnum(net.watchee.FilterTypeEnum.CRON);
bh.push(bl);
}}return bh;
},onChangeSelectedRuleName:function(bo){if(bo==null||bo.isFallbackRule()){this.checkAllWeekDays(true);
}else{this.checkAllWeekDays(false);
var bv=bo.getFilterTOs(net.watchee.FilterTypeEnum.CRON);
var bu=(bv.length>0)?bv[0]:null;
var bx=(bu!=null)?bu.getCronExpression():null;
var by=(bv.length>1)?bv[1]:null;
var bw=(by!=null)?by.getCronExpression():null;

if(bx!=null){var bt=this.fromDayTimeSlider;
this.completeDayCheckBox.setValue(bx.isCompleteDay());
this.timeZoneLabel.setVisibility(bx.isCompleteDay()?j:h);

if(!bx.isCompleteDay()){var bs=bx.getHoursInt();
var bq=bx.getMinutesInt();
bt.moveSliderTo(bs,bq);
}
for(var i=0,l=this.weekDays.length;i<l;i++){var bA=this.weekDays[i];

if(bx.isForever()){bA.checkBox.setValue(true);
}else{var bp=bx.matchesDayOfWeek(bA.cronId);
bA.checkBox.setValue(bp);

if(bx.isCompleteDay()){if(bp){var br=false;

for(i=i+1;i<l;i++){var bA=this.weekDays[i];
var bp=bw.matchesDayOfWeek(bA.cronId);

if(bp){br=true;
break;
}bA.checkBox.setValue(true);
}
if(!br){for(var bz=0;bz<i;bz++){var bA=this.weekDays[bz];
var bp=bw.matchesDayOfWeek(bA.cronId);

if(bp){br=true;
break;
}bA.checkBox.setValue(true);
}}}}}}}
if(bw!=null){var bt=this.untilDayTimeSlider;

if(!bw.isCompleteDay()){var bs=bw.getHoursInt();
var bq=bw.getMinutesInt();
bt.moveSliderTo(bs,bq);
}}}},onChangeSelectedRuleTypeEnum:function(bB){this.currentSelectedRuleTypeEnum=bB;

if(this.groupBox==null)return;
this.completeDayCheckBox.setValue(true);
this.completeDayCheckBox.setEnabled(true);
this.timeZoneLabel.setVisibility(j);
this.groupBox.setEnabled(true);

if(net.watchee.RuleTypeEnum.FALLBACK.isSame(bB)){this.checkAllWeekDays(true);
this.groupBox.setEnabled(false);
}else if(net.watchee.RuleTypeEnum.SCHEDULED_EVENT.isSame(bB)){this.completeDayCheckBox.setValue(false);
this.completeDayCheckBox.setEnabled(false);
this.untilDayTimeSlider.setEnabled(false);
this.timeZoneLabel.setVisibility(h);
}else{this.checkAllWeekDays(true);
}},checkAllWeekDays:function(bC){for(var i=0,l=this.weekDays.length;i<l;i++){var bD=this.weekDays[i];
bD.checkBox.setValue(bC);
}},clear:function(){}},destruct:function(){this.destroyPopup();
}});
})();
(function(){var k="",j="bottom",i="releaseSlider",h="#808080",g="Escape",f='',d="changeValue",c="00",b="center",a=" ",w=":",v="qx.event.type.Event",u="h",t="0:00",s="right",r="mouseup",q="keypress",p="track.util.DayTimeSlider",o="hour abbreviation",n="button-pressed",l="23:45",m="left";
qx.Class.define(p,{extend:qx.ui.container.Composite,construct:function(x){qx.ui.container.Composite.call(this);
this.setLayout(new qx.ui.layout.HBox());
this.slider=new track.util.WatcheeSlider(x);
this.slider.addListener(r,function(){this.fireEvent(i);
},this);
this.slider.addListener(q,function(e){if(e.getKeyIdentifier()==g){this.fireEvent(i);
}},this);
this.hourAbrev=this.trc(o,u);
this.minValue=0;
this.maxValue=95;
this.minAllowed=this.minValue;
this.maxAllowed=this.maxValue;
},events:{"releaseSlider":v},members:{createTimer:function(y,z,A){var y=y||k;
var z=z||12;
var A=A||400;

if(A>0)this.setWidth(A);
if(y!=f){var B=new qx.ui.basic.Label(y);
this.add(B);
}var D=new qx.ui.layout.Grid();
D.setSpacing(1);
D.setColumnFlex(0,1);
D.setColumnFlex(1,1);
D.setColumnFlex(2,1);
D.setColumnAlign(0,m,j);
D.setColumnAlign(1,b,j);
D.setColumnAlign(2,s,j);
var E=new qx.ui.container.Composite(D);
E.setWidth(A);
this.slider.set({width:A,minimum:this.minValue,maximum:this.maxValue,singleStep:1,pageStep:4,value:z*4});
var F=new qx.ui.basic.Label(t+this.hourAbrev);
F.setTextColor(h);
var G=new qx.ui.basic.Label(l+this.hourAbrev);
G.setTextColor(h);
var C=new qx.ui.basic.Label(this.__oO(this.slider.getValue()).time+this.hourAbrev);
this.slider.addListener(d,function(e){C.setValue(this.__oO(this.slider.getValue()).time+this.hourAbrev);
},this);
E.add(F,{row:0,column:0});
E.add(C,{row:0,column:1});
E.add(G,{row:0,column:2});
E.add(this.slider,{row:1,column:0,colSpan:3,rowSpan:1});
this.add(E);
this.setDecorator(n);
return this;
},handleKeyPress:function(){this.slider.handleKeyPress(e);
},moveSliderTo:function(H,I){this.slider.setValue(H*4+Math.floor(I/15.0));
},__oO:function(J,K){var K=K||true;
var R=parseFloat(J);
var N=Math.floor(R/4.0);
var Q=new String(N);

if(K&&Q.length<2)Q=a+Q;
var P=Math.round((R/4.0-N)*60);
var M=((P==0)?c:k+P);
var O=(k+Q+w+M);
var L={hours:N,minutes:P,time:O};
return L;
},getNumericTimeValue:function(){if(this.slider==null)return 0;
return this.slider.getValue();
},setNumericTimeValue:function(S){if(this.slider!=null){this.slider.setValue(S);
}},getMinuteStr:function(){if(this.slider==null)return k;
return this.__oO(this.slider.getValue(),false).minutes;
},getHourStr:function(){if(this.slider==null)return k;
return this.__oO(this.slider.getValue(),false).hours;
},getTimeStr:function(){if(this.slider==null)return k;
return this.__oO(this.slider.getValue(),false).time;
},getValue:function(){var T=new Date(0);
T.setHours(parseInt(this.getHourStr()));
T.setMinutes(parseInt(this.getMinuteStr()));
this.info("DayTimeSlider getValue: "+T.getHours()+":"+T.getMinutes());
return T;
},setValue:function(U){this.moveSliderTo(U.getHours(),U.getMinutes());
}},destruct:function(){this._disposeObjects();
}});
})();
(function(){var c="resize",b="knob",a="track.util.WatcheeSlider";
qx.Class.define(a,{extend:qx.ui.form.Slider,construct:function(d){this.knobIcon=d||null;
qx.ui.form.Slider.call(this);
},members:{_createChildControlImpl:function(e){var f;
var g=this.knobIcon;
switch(e){case b:if(g==null)f=new qx.ui.core.Widget();
else f=new qx.ui.basic.Atom(null,g);
f.addListener(c,this._onUpdate,this);
this._add(f);
break;
}return f||qx.ui.form.Slider.prototype._createChildControlImpl.call(this,e);
}}});
})();
(function(){var p="",o="OEM/",n="TextArea",m="infoMsgBox",k="changeValue",j="middle",h="label",g="text",f="focus",d="right",bz="execute",by="errorMsgBox",bx="sendTestEmail",bw="22/testSend.png",bv="\n",bu="to",bt="Test",bs="/from",br="supportEmail",bq="mousedown",w="%1 is validated",x="Please enter a valid SMS phone number +49175... to test",u="mail.subject",v="Please enter the command to send to the phone<br />",s="content",t="Email is sent to %1, please check your email account",q="Please enter a valid email address to test",r="expires",E="demo@gmx.net\ntest@yahoo.com",F="GPSvision",S="Browser notification",O="button email",bb="promptMsgBox.label",V="doAction: xb start; gps start; tracking start",bm="Sending SMS is for customers only",bg="button",J="from",bp="<i>for example 'doAction: xb start; gps start; tracking start'</i>",bo="Sending Emails is for customers only",bn="sms.testTitle",I=":",L="track.rules.EventSinkGroup",N="Email notification",Q="Test Mail From Portal",T="supportPhone",W="%1 Test",bd="emailTestButton.enabled",bi="subject",y="+60000",z="supportName",K="mr@marcelruff.info",ba="oemName",Y="+4917599999\n+491577000000",X="sms.text",bf="Your command to send",be="+491754616132\n+4915774705478:50412",U="Send Alarm To Email/SMS",bc="oemNiceName",a="smsTestButton.enabled",bh="/supportEmail",A="/oemNiceName",B="mail.content",P="emailsend",b="promptMsgBox.title",c="port",H="/supportPhone",C="SMS is sent to %1, please check your mobile phone",D="@",G="Your email address %1 is validated",R="lang",bk="groupbox title",bj="left",M="/supportName",bl="SMS notification";
qx.Class.define(L,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(bA){qx.core.Object.call(this);
this.trackGui=bA;
this.groupBox=null;
this.browserCheckBox=null;
this.emailCheckBox=null;
this.emailTextArea=null;
this.emailTextAreaExample=this.trc(n,E);
this.emailTestButton=null;
this.emailTestButtonEnabled=xbProperties.getBoolean(bd,true);
this.smsCheckBox=null;
this.smsTextArea=null;
this.smsTextAreaExample=this.trc(n,Y);
this.smsTestButton=null;
this.smsTestButtonEnabled=xbProperties.getBoolean(a,true);
this.j2meCommand=V;
this.j2meEnableSend=true;
this.testFixed=isDevelopEnvironment;

if(this.testFixed){this.emailTextAreaExample=this.trc(n,K);
this.smsTextAreaExample=this.trc(n,be);
}},members:{createGroup:function(bB){var bI=new qx.ui.groupbox.GroupBox(this.trc(bk,U));
this.groupBox=bI;
var bC=new qx.ui.layout.Grid(5,5);
bI.setLayout(bC);
bI.setContentPadding(bB||12);
var bJ=0;
var bF=0;
var bG=1;
var bE=2;
bC.setColumnAlign(0,bj,j);
bC.setColumnAlign(1,d,j);
this.browserCheckBox=new qx.ui.form.CheckBox(this.trc(h,S));
this.browserCheckBox.setValue(true);
this.browserCheckBox.addListener(k,function(e){},this);
bI.add(this.browserCheckBox,{row:bJ,column:bF});
bJ++;
var bH=false;
this.emailCheckBox=new qx.ui.form.CheckBox(this.trc(h,N));
this.emailCheckBox.setValue(bH);
bI.add(this.emailCheckBox,{row:bJ,column:bF});
this.emailTextArea=new qx.ui.form.TextArea(this.emailTextAreaExample);
this.emailTextArea.setWrap(false);
this.emailTextArea.setHeight(42);
this.emailTextArea.setEnabled(bH);
this.emailTextArea.addListener(f,function(e){if(!this.testFixed&&this.__oS()==this.emailTextAreaExample){this.emailTextArea.setValue(p);
}},this);
bI.add(this.emailTextArea,{row:bJ,column:bG});
this.emailTestButton=new qx.ui.form.Button(this.trc(O,bt),xbGetIcon(bw));
this.emailTestButton.setEnabled(bH);
bI.add(this.emailTestButton,{row:bJ,column:bE});
this.emailCheckBox.addListener(k,function(e){var bK=e.getData();
this.__oP(bK);
},this);
this.emailTestButton.addListener(bz,function(e){if(this.trackGui.watchee==null)return;

if(this.sendTestEmails()==false)return;
this.emailTestButton.setEnabled(false);

if(this.emailTestButtonEnabled){qx.event.Timer.once(function(e){this.emailTestButton.setEnabled(true);
},this,10000);
}},this);
bJ++;
var bD=false;
this.smsCheckBox=new qx.ui.form.CheckBox(this.trc(h,bl));
this.smsCheckBox.setValue(bD);
bI.add(this.smsCheckBox,{row:bJ,column:bF});
this.smsTextArea=new qx.ui.form.TextArea(this.smsTextAreaExample);
this.smsTextArea.setWrap(false);
this.smsTextArea.setHeight(42);
this.smsTextArea.setEnabled(bD);
this.smsTextArea.addListener(f,function(e){if(!this.testFixed&&this.__oR()==this.smsTextAreaExample){this.smsTextArea.setValue(p);
}},this);
bI.add(this.smsTextArea,{row:bJ,column:bG});
this.smsTestButton=new qx.ui.form.Button(this.trc(bg,bt),xbGetIcon(bw));
this.smsTestButton.setEnabled(this.smsTestButtonEnabled&&bD);
bI.add(this.smsTestButton,{row:bJ,column:bE});
this.smsCheckBox.addListener(k,function(e){var bL=e.getData();
this.__oQ(bL);
},this);
this.smsTestButton.addListener(bz,function(e){if(this.trackGui.watchee==null)return;

if(this.j2meEnableSend==false)return;

if(this.sendTestSmses()==false)return;
this.smsTestButton.setEnabled(false);

if(this.smsTestButtonEnabled){qx.event.Timer.once(function(e){this.smsTestButton.setEnabled(true);
},this,60000);
}},this);
this.smsTestButton.addListener(bq,function(e){if(this.trackGui.watchee==null)return;

if(e.isShiftPressed()){this.j2meEnableSend=false;
this.editJ2meCommand();
}},this);
bJ++;
bC.setColumnFlex(bG,1);
bC.setColumnAlign(bE,d,j);
return bI;
},__oP:function(bM){this.emailTextArea.setEnabled(bM);
this.emailTestButton.setEnabled(this.emailTestButtonEnabled&&bM);
},__oQ:function(bN){this.smsTextArea.setEnabled(bN);
this.smsTestButton.setEnabled(this.smsTestButtonEnabled&&bN);
},__oR:function(){var bP=100;
var bO=this.smsTextArea.getValue();
bO=org.xmlBlaster.util.trim(bO);

if(bO.length>bP){bO=bO.substring(0,bP);
bO=org.xmlBlaster.util.trim(bO);
this.smsTextArea.setValue(bO);
}return bO;
},__oS:function(){var bQ=156;
var bR=this.emailTextArea.getValue();
bR=org.xmlBlaster.util.trim(bR);

if(bR.length>bQ){bR=bR.substring(0,bQ);
bR=org.xmlBlaster.util.trim(bR);
this.emailTextArea.setValue(bR);
}return bR;
},editJ2meCommand:function(){var bS=3;
var bT=false;
this.trackGui.promptMsgBox(this.trc(b,bf),this.trc(bb,v+bp),this.j2meCommand,bS,bT,function(bU,bV){this.j2meEnableSend=true;

if(bU){this.j2meCommand=bV;
}},this);
},sendTestEmails:function(){var bW=this.getValidatedEmailAddresses();

if(bW.length==0){this.trackGui.errorMsgBox(this.trc(by,q));
return false;
}
for(var i=0,l=bW.length;i<l;i++){var bX=bW[i];

if(this.sendTestEmail(bX)==false)return false;
}return true;
},sendTestEmail:function(bY){if(!this.trackGui.getSessionProfile().hasPermissionForEmailSending()){this.trackGui.infoMsgBox(this.trc(m,bo));
return false;
}var cb=P;
var cc=p;
var cd=new net.watchee.PropertyCollection();
var ca=new net.watchee.PropertyPair(bu,bY);
cd.add(ca);
var ca=new net.watchee.PropertyPair(bi,this.trc(u,Q));
cd.add(ca);
var ca=new net.watchee.PropertyPair(s,this.trc(B,G,bY));
cd.add(ca);
var ca=new net.watchee.PropertyPair(r,y);
cd.add(ca);
this.appendOemInfo(cd);
var content=cd.toXml();
this.trackGui.watchee.publishContent(cb,content,cc,this.trackGui.returnQosOrException,this.trackGui,bx);
this.trackGui.infoMsgBox(this.trc(m,t,bY));
return true;
},appendOemInfo:function(ce){var cj=F;
var ck=this.trackGui.getMyAccountTO();

if(ck==null)return cj;
var ci=ck.getOemName();

if(ci!=null&&ci!=p){cj=ci;
ce.addKeyValue(ba,ci);
ce.addKeyValue(R,ck.getLanguage());
var cf=ck.getAccountPropertyStr(o+ci+bs,null);

if(cf!=null){ce.addKeyValue(J,cf);
}var cl=ck.getAccountPropertyStr(o+ci+bh,null);

if(cl!=null){ce.addKeyValue(br,cl);
}var ch=ck.getAccountPropertyStr(o+ci+H,null);

if(ch!=null){ce.addKeyValue(T,ch);
}var cm=ck.getAccountPropertyStr(o+ci+A,null);

if(cm!=null){ce.addKeyValue(bc,cm);
cj=cm;
}var cg=ck.getAccountPropertyStr(o+ci+M,null);

if(cg!=null){ce.addKeyValue(z,cg);
cj=cg;
}}return cj;
},getValidatedEmailAddresses:function(){var co=[];

if(this.emailCheckBox.getValue()){var cp=this.__oS();

if(!this.testFixed&&cp==this.emailTextAreaExample){return co;
}var cn=cp.split(/[\s,;]+/);

for(var i=0,l=cn.length;i<l;i++){var cq=this.validateEmailAddress(cn[i]);

if(cq==null)continue;
co.push(cq);
}}return co;
},validateEmailAddress:function(cr){var cr=cr||null;

if(cr==null){return null;
}cr=org.xmlBlaster.util.trim(cr);

if(cr.indexOf(D)==-1){return null;
}
if(cr.length<5){return null;
}return cr;
},sendTestSmses:function(){var ct=this.getValidatedSmsAddresses();

if(ct.length==0){this.trackGui.errorMsgBox(this.trc(by,x));
return false;
}
for(var i=0,l=ct.length;i<l;i++){var cs=ct[i];

if(this.sendTestSms(cs)==false)return false;
}return true;
},getValidatedSmsAddresses:function(){var cv=[];

if(this.smsCheckBox.getValue()){var cx=this.__oR();

if(!this.testFixed&&cx==this.smsTextAreaExample){return cv;
}var cw=cx.split(/[\s,;]+/);

for(var i=0,l=cw.length;i<l;i++){var cu=this.validateSmsPhoneNumber(cw[i]);

if(cu==null)continue;
cv.push(cu);
}}return cv;
},validateSmsPhoneNumber:function(cy){if(this.trackGui!=null&&this.trackGui.watchee!=null)return this.trackGui.watchee.validateSmsPhoneNumber(cy);
return cy;
},spiltPhoneNumberPort:function(cz){var cA=cz.indexOf(I);

if(cA!=-1){var cB=null;

if(cA<cz.length)cB=cz.substring(cA+1);
return {phoneNumber:cz.substring(0,cA),port:cB};
}return {phoneNumber:cz,port:null};
},sendTestSms:function(cC){if(!this.trackGui.getSessionProfile().hasPermissionForSmsSending()){this.trackGui.infoMsgBox(this.trc(m,bm));
return false;
}var cD=this.trackGui.watchee.getTopicSmssend(cC);
var cF=p;
var cE=this.spiltPhoneNumberPort(cC);
var cI=new net.watchee.PropertyCollection();
var cJ=new net.watchee.PropertyPair(bu,cE.phoneNumber);
cI.add(cJ);
var cG=this.appendOemInfo(cI);
var cH=this.trc(bn,W,cG);
var cJ=new net.watchee.PropertyPair(g,cH+bv+this.trc(X,w,cE.phoneNumber));

if(cE.port!=null)cJ=new net.watchee.PropertyPair(g,this.j2meCommand);
cI.add(cJ);

if(cE.port!=null){var cJ=new net.watchee.PropertyPair(c,cE.port);
cI.add(cJ);
}var content=cI.toXml();
this.trackGui.watchee.publishContent(cD,content,cF,this.trackGui.returnQosOrException,this.trackGui,bx);
this.trackGui.infoMsgBox(this.trc(m,C,cC));
},getEventSinksTOFromGui:function(){var cM=[];

if(this.browserCheckBox.getValue()){var cO=new track.rulesmodel.EventSinkTO(this.trackGui,null);
cO.setExpression(p);
cO.setEventSinkTypeEnum(net.watchee.EventSinkTypeEnum.BROWSER);
cM.push(cO);
}var cK=this.getValidatedEmailAddresses();

for(var i=0,l=cK.length;i<l;i++){var cP=cK[i];
var cO=new track.rulesmodel.EventSinkTO(this.trackGui,null);
cO.setExpression(cP);
cO.setEventSinkTypeEnum(net.watchee.EventSinkTypeEnum.EMAIL);
cM.push(cO);
}var cN=this.getValidatedSmsAddresses();

for(var i=0,l=cN.length;i<l;i++){var cL=cN[i];
var cO=new track.rulesmodel.EventSinkTO(this.trackGui,null);
cO.setExpression(cL);
cO.setEventSinkTypeEnum(net.watchee.EventSinkTypeEnum.SMS);
cM.push(cO);
}return cM;
},onChangeSelectedRuleName:function(cQ){this.emailTextArea.setValue(this.emailTextAreaExample);
this.emailCheckBox.setValue(false);
this.smsTextArea.setValue(this.smsTextAreaExample);
this.smsCheckBox.setValue(false);

if(cQ==null){this.groupBox.setEnabled(true);
return;
}var cR=bv;
var cS=p;
var cU=cQ.getEventSinkTOs(net.watchee.EventSinkTypeEnum.EMAIL);

if(cU.length>0){this.emailCheckBox.setValue(true);

for(var i=0,l=cU.length;i<l;i++){var cV=cU[i];

if(i>0)cS+=cR;
cS+=cV.getExpression();
}
if(cS.length>0){this.emailTextArea.setValue(cS);
}}var cT=p;
var cU=cQ.getEventSinkTOs(net.watchee.EventSinkTypeEnum.SMS);

if(cU.length>0){this.smsCheckBox.setValue(true);

for(var i=0,l=cU.length;i<l;i++){var cV=cU[i];

if(i>0)cT+=cR;
cT+=cV.getExpression();
}
if(cT.length>0){this.smsTextArea.setValue(cT);
}}},onChangeSelectedRuleTypeEnum:function(cW){if(this.groupBox==null)return;
this.browserCheckBox.setValue(true);
this.browserCheckBox.setEnabled(false);

if(net.watchee.RuleTypeEnum.FALLBACK.isSame(cW)){this.groupBox.setEnabled(false);
}else if(net.watchee.RuleTypeEnum.GPRS_LOST.isSame(cW)){this.browserCheckBox.setEnabled(true);
}else if(net.watchee.RuleTypeEnum.SCHEDULED_EVENT.isSame(cW)){this.browserCheckBox.setEnabled(true);
}else{this.groupBox.setEnabled(true);
}},clear:function(){}},destruct:function(){this.destroyPopup();
}});
})();
(function(){var k="auto",j="engine.name",i="hidden",h="overflowY",g="textarea",f="width",d="Boolean",c="Integer",b="input",a="appear",A="mshtml",z="webkit",y="px",x="_applyWrap",w="-1",v="_applyMinimalLineHeight",u="mousewheel",t="visible",s="y",r="browser.documentmode",p="_applyAutoSize",q="tabIndex",n='name',o="qx.ui.form.TextArea",l='id',m="absolute";
qx.Class.define(o,{extend:qx.ui.form.AbstractField,construct:function(B){qx.ui.form.AbstractField.call(this,B);
this.initWrap();
this.addListener(u,this._onMousewheel,this);
},properties:{wrap:{check:d,init:true,apply:x},appearance:{refine:true,init:g},singleStep:{check:c,init:20},minimalLineHeight:{check:c,apply:v,init:4},autoSize:{check:d,apply:p,init:false}},members:{__oT:null,__oU:null,__oV:null,setValue:function(C){C=qx.ui.form.AbstractField.prototype.setValue.call(this,C);
this.__oW();
return C;
},_onMousewheel:function(e){var D=this.getContentElement();
var scrollY=D.getScrollY();
D.scrollToY(scrollY+e.getWheelDelta(s)*this.getSingleStep());
var E=D.getScrollY();

if(E!=scrollY){e.stop();
}},__oW:function(){if(this.isAutoSize()){var H=this.__oX();

if(H){this.__oV=this.__oV||this._getAreaHeight();
var J=this._getScrolledAreaHeight();
if(this.getMaxHeight()){var F=this.getInsets();
var G=-F.top+this.getMaxHeight()-F.bottom;

if(J>G){this.getContentElement().setStyle(h,k);
}else{this.getContentElement().setStyle(h,i);
}}var I=Math.max(J,this.__oV);
this._setAreaHeight(I);
}else{this.addListenerOnce(a,function(){this.__oW();
},this);
}}},_getAreaHeight:function(){return this.getInnerSize().height;
},_setAreaHeight:function(K){if(this._getAreaHeight()!==K){this.__oU=K;
qx.ui.core.queue.Layout.add(this);
qx.ui.core.queue.Manager.flush();
this.__pb();
}},_getScrolledAreaHeight:function(){var M=this.__oX();
var L=M.getDomElement();

if(L){if(!L.parentNode){qx.html.Element.flush();
return this._getScrolledAreaHeight();
}if(qx.core.Environment.get(j)===z){M.setWrap(!this.getWrap(),true);
}M.setWrap(this.getWrap(),true);
if(qx.core.Environment.get(j)==z){L.style.overflow=i;
}if(qx.core.Environment.get(j)==A&&qx.core.Environment.get(r)>=8){L.style.overflow=t;
}M.setValue(this.getValue());
this.__pa(M);

if(qx.core.Environment.get(j)==A){if(!L.scrollTop){qx.html.Element.flush();
}return L.scrollTop+this._getTextSize().height;
}return L.scrollTop;
}},__oX:function(){this.__oT=this.__oT||this.__oY();
return this.__oT;
},__oY:function(){var Q,O,N,P;
Q=this.getContentElement();
if(!Q.getDomElement()){return;
}N=qx.bom.Collection.create(Q.getDomElement()).clone()[0];
P=new qx.html.Input(g);
P.useElement(N);
O=P;
O.setStyles({position:m,top:0,left:-9999,height:0,overflow:i},true);
O.removeAttribute(l);
O.removeAttribute(n);
O.setAttribute(q,w);
O.setValue(Q.getValue());
O.insertBefore(Q);
this.__pa(O);
return O;
},__pa:function(R){R=R.getDomElement();

if(R){R.scrollTop=10000;
}},_createInputElement:function(){return new qx.html.Input(g,{overflowX:k,overflowY:k});
},_applyWrap:function(S,T){this.getContentElement().setWrap(S);
this.__oW();
},_applyMinimalLineHeight:function(){qx.ui.core.queue.Layout.add(this);
},_applyAutoSize:function(U,V){if(U){this.__oW();
this.addListener(b,this.__oW,this);
this.addListenerOnce(a,function(){this.getContentElement().setStyle(h,i);
});
}else{this.removeListener(b,this.__oW);
this.getContentElement().setStyle(h,k);
}},_applyDimension:function(W){qx.ui.form.AbstractField.prototype._applyDimension.call(this);

if(W===this.getMaxHeight()){this.__oW();
}},__pb:function(){var content=this.getContentElement();
var Y=content.getDomElement();
var X=content.getStyle(f);
content.setStyle(f,parseInt(X,10)+1000+y,true);
if(Y){qx.bom.element.Dimension.getWidth(Y);
}content.setStyle(f,X,true);
},__pc:function(){if(this.isAutoSize()&&this.getHeight()){this.warn("autoSize is ignored when the height property is set. "+"If you want to set an initial height, use the minHeight "+"property instead.");
}},_getContentHint:function(){var ba=qx.ui.form.AbstractField.prototype._getContentHint.call(this);
ba.height=ba.height*this.getMinimalLineHeight();
ba.width=this._getTextSize().width*20;

if(this.isAutoSize()){ba.height=this.__oU||ba.height;
}return ba;
}}});
})();
(function(){var s="html.classlist",r="default",q="native",p="",o=" ",n='',m="(^|\\s)",k="(\\s|$)",j="\\b",h="g",c='function',g="\\b|\\b",f="qx.bom.element.Class",b='SVGAnimatedString',a='object',e="$2",d='undefined';
qx.Class.define(f,{statics:{__pd:/\s+/g,__pe:/^\s+|\s+$/g,add:qx.lang.Object.select(qx.core.Environment.get(s)?q:r,{"native":function(t,name){t.classList.add(name);
return name;
},"default":function(u,name){if(!this.has(u,name)){u.className+=(u.className?o:p)+name;
}return name;
}}),addClasses:qx.lang.Object.select(qx.core.Environment.get(s)?q:r,{"native":function(v,w){for(var i=0;i<w.length;i++){v.classList.add(w[i]);
}return v.className;
},"default":function(x,y){var z={};
var B;
var A=x.className;

if(A){B=A.split(this.__pd);

for(var i=0,l=B.length;i<l;i++){z[B[i]]=true;
}
for(var i=0,l=y.length;i<l;i++){if(!z[y[i]]){B.push(y[i]);
}}}else{B=y;
}return x.className=B.join(o);
}}),get:function(C){var D=C.className;

if(typeof D.split!==c){if(typeof D===a){if(qx.Bootstrap.getClass(D)==b){D=D.baseVal;
}else{D=n;
}}
if(typeof D===d){D=n;
}}return D;
},has:qx.lang.Object.select(qx.core.Environment.get(s)?q:r,{"native":function(E,name){return E.classList.contains(name);
},"default":function(F,name){var G=new RegExp(m+name+k);
return G.test(F.className);
}}),remove:qx.lang.Object.select(qx.core.Environment.get(s)?q:r,{"native":function(H,name){H.classList.remove(name);
return name;
},"default":function(I,name){var J=new RegExp(m+name+k);
I.className=I.className.replace(J,e);
return name;
}}),removeClasses:qx.lang.Object.select(qx.core.Environment.get(s)?q:r,{"native":function(K,L){for(var i=0;i<L.length;i++){K.classList.remove(L[i]);
}return K.className;
},"default":function(M,N){var O=new RegExp(j+N.join(g)+j,h);
return M.className=M.className.replace(O,p).replace(this.__pe,p).replace(this.__pd,o);
}}),replace:function(P,Q,R){this.remove(P,Q);
return this.add(P,R);
},toggle:qx.lang.Object.select(qx.core.Environment.get(s)?q:r,{"native":function(S,name,T){if(T===undefined){S.classList.toggle(name);
}else{T?this.add(S,name):this.remove(S,name);
}return name;
},"default":function(U,name,V){if(V==null){V=!this.has(U,name);
}V?this.add(U,name):this.remove(U,name);
return name;
}})}});
})();
(function(){var f="mshtml",e="engine.name",d="pop.push.reverse.shift.sort.splice.unshift.join.slice",c="number",b="qx.type.BaseArray",a=".";
qx.Class.define(b,{extend:Array,construct:function(g){},members:{toArray:null,valueOf:null,pop:null,push:null,reverse:null,shift:null,sort:null,splice:null,unshift:null,concat:null,join:null,slice:null,toString:null,indexOf:null,lastIndexOf:null,forEach:null,filter:null,map:null,some:null,every:null}});
(function(){function k(l){if((qx.core.Environment.get(e)==f)){j.prototype={length:0,$$isArray:true};
var o=d.split(a);

for(var length=o.length;length;){j.prototype[o[--length]]=Array.prototype[o[length]];
}}var p=Array.prototype.slice;
j.prototype.concat=function(){var r=this.slice(0);

for(var i=0,length=arguments.length;i<length;i++){var q;

if(arguments[i] instanceof j){q=p.call(arguments[i],0);
}else if(arguments[i] instanceof Array){q=arguments[i];
}else{q=[arguments[i]];
}r.push.apply(r,q);
}return r;
};
j.prototype.toString=function(){return p.call(this,0).toString();
};
j.prototype.toLocaleString=function(){return p.call(this,0).toLocaleString();
};
j.prototype.constructor=j;
j.prototype.indexOf=qx.lang.Core.arrayIndexOf;
j.prototype.lastIndexOf=qx.lang.Core.arrayLastIndexOf;
j.prototype.forEach=qx.lang.Core.arrayForEach;
j.prototype.some=qx.lang.Core.arraySome;
j.prototype.every=qx.lang.Core.arrayEvery;
var m=qx.lang.Core.arrayFilter;
var n=qx.lang.Core.arrayMap;
j.prototype.filter=function(){var s=new this.constructor;
s.push.apply(s,m.apply(this,arguments));
return s;
};
j.prototype.map=function(){var t=new this.constructor;
t.push.apply(t,n.apply(this,arguments));
return t;
};
j.prototype.slice=function(){var u=new this.constructor;
u.push.apply(u,Array.prototype.slice.apply(this,arguments));
return u;
};
j.prototype.splice=function(){var v=new this.constructor;
v.push.apply(v,Array.prototype.splice.apply(this,arguments));
return v;
};
j.prototype.toArray=function(){return Array.prototype.slice.call(this,0);
};
j.prototype.valueOf=function(){return this.length;
};
return j;
}function j(length){if(arguments.length===1&&typeof length===c){this.length=-1<length&&length===length>>.5?length:this.push(length);
}else if(arguments.length){this.push.apply(this,arguments);
}}function h(){}h.prototype=[];
j.prototype=new h;
j.prototype.length=0;
qx.type.BaseArray=k(j);
})();
})();
(function(){var m="get",k="set",h="reset",g=":not(",f="getValue",e="append",d=")",c="getPreviousSiblings",b="#",a="qx.bom.Collection",K="setValue",J="prepend",I="string",H="getAncestors",G="getOffsetParent",F="remove",E=">*",D="add",C="*",B="",t="addListener",u="has",r="toggle",s="getSiblings",p="replace",q="after",n="replaceWith",o="setCss",v="setStyles",w="before",y="getNextSiblings",x="getPosition",A="getCss",z="removeListener";
(function(){var M=function(N,O){return function(P,Q,R,S,T,U){var length=this.length;

if(length>0){var V=N[O];

for(var i=0;i<length;i++){if(this[i].nodeType===1){V.call(N,this[i],P,Q,R,S,T,U);
}}}return this;
};
};
var L=function(W,X){return function(Y,ba,bb,bc,bd,be){if(this.length>0){var bf=this[0].nodeType===1?W[X](this[0],Y,ba,bb,bc,bd,be):null;

if(bf&&bf.nodeType){return this.__pj([bf]);
}else{return bf;
}}return null;
};
};
qx.Class.define(a,{extend:qx.type.BaseArray,construct:function(bg){qx.type.BaseArray.apply(this,arguments);
},statics:{query:function(bh,bi){var bj=qx.bom.Selector.query(bh,bi);
return qx.lang.Array.cast(bj,qx.bom.Collection);
},id:function(bk){var bl=document.getElementById(bk);
if(bl&&bl.id!=bk){return qx.bom.Collection.query(b+bk);
}if(bl){return new qx.bom.Collection(bl);
}else{return new qx.bom.Collection();
}},html:function(bm,bn){var bo=qx.bom.Html.clean([bm],bn);
return qx.lang.Array.cast(bo,qx.bom.Collection);
},__pf:/^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,create:function(bp,bq){var bs=qx.bom.Collection;
if(bp.nodeType){return new bs(bp);
}else if(typeof bp===I){var br=bs.__pf.exec(bp);

if(br){return br[1]?bs.html(br[1],bq):bs.id(br[3].substring(1));
}else{return bs.query(bp,bq);
}}else{return qx.lang.Array.cast(bp,qx.bom.Collection);
}}},members:{__pg:null,setAttribute:M(qx.bom.element.Attribute,k),resetAttribute:M(qx.bom.element.Attribute,h),getAttribute:L(qx.bom.element.Attribute,m),addClass:M(qx.bom.element.Class,D),getClass:L(qx.bom.element.Class,m),hasClass:L(qx.bom.element.Class,u),removeClass:M(qx.bom.element.Class,F),replaceClass:M(qx.bom.element.Class,p),toggleClass:M(qx.bom.element.Class,r),setValue:M(qx.bom.Input,K),getValue:L(qx.bom.Input,f),setStyle:M(qx.bom.element.Style,k),setStyles:M(qx.bom.element.Style,v),resetStyle:M(qx.bom.element.Style,h),getStyle:L(qx.bom.element.Style,m),setCss:M(qx.bom.element.Style,o),getCss:M(qx.bom.element.Style,A),getOffset:L(qx.bom.element.Location,m),getPosition:L(qx.bom.element.Location,x),getOffsetParent:L(qx.bom.element.Location,G),setScrollLeft:function(bt){var Node=qx.dom.Node;

for(var i=0,l=this.length,bu;i<l;i++){bu=this[i];

if(Node.isElement(bu)){bu.scrollLeft=bt;
}else if(Node.isWindow(bu)){bu.scrollTo(bt,this.getScrollTop(bu));
}else if(Node.isDocument(bu)){Node.getWindow(bu).scrollTo(bt,this.getScrollTop(bu));
}}return this;
},setScrollTop:function(bv){var Node=qx.dom.Node;

for(var i=0,l=this.length,bw;i<l;i++){bw=this[i];

if(Node.isElement(bw)){bw.scrollTop=bv;
}else if(Node.isWindow(bw)){bw.scrollTo(this.getScrollLeft(bw),bv);
}else if(Node.isDocument(bw)){Node.getWindow(bw).scrollTo(this.getScrollLeft(bw),bv);
}}return this;
},getScrollLeft:function(){var bx=this[0];

if(!bx){return null;
}var Node=qx.dom.Node;

if(Node.isWindow(bx)||Node.isDocument(bx)){return qx.bom.Viewport.getScrollLeft();
}return bx.scrollLeft;
},getScrollTop:function(){var by=this[0];

if(!by){return null;
}var Node=qx.dom.Node;

if(Node.isWindow(by)||Node.isDocument(by)){return qx.bom.Viewport.getScrollTop();
}return by.scrollTop;
},getWidth:function(){var bz=this[0];
var Node=qx.dom.Node;

if(bz){if(Node.isElement(bz)){return qx.bom.element.Dimension.getWidth(bz);
}else if(Node.isDocument(bz)){return qx.bom.Document.getWidth(Node.getWindow(bz));
}else if(Node.isWindow(bz)){return qx.bom.Viewport.getWidth(bz);
}}return null;
},getContentWidth:function(){var bA=this[0];

if(qx.dom.Node.isElement(bA)){return qx.bom.element.Dimension.getContentWidth(bA);
}return null;
},getHeight:function(){var bB=this[0];
var Node=qx.dom.Node;

if(bB){if(Node.isElement(bB)){return qx.bom.element.Dimension.getHeight(bB);
}else if(Node.isDocument(bB)){return qx.bom.Document.getHeight(Node.getWindow(bB));
}else if(Node.isWindow(bB)){return qx.bom.Viewport.getHeight(bB);
}}return null;
},getContentHeight:function(){var bC=this[0];

if(qx.dom.Node.isElement(bC)){return qx.bom.element.Dimension.getContentHeight(bC);
}return null;
},addListener:M(qx.bom.Element,t),removeListener:M(qx.bom.Element,z),eq:function(bD){return this.slice(bD,+bD+1);
},filter:function(bE,bF){var bG;

if(qx.lang.Type.isFunction(bE)){bG=qx.type.BaseArray.prototype.filter.call(this,bE,bF);
}else{bG=qx.bom.Selector.matches(bE,this);
}return this.__pj(bG);
},is:function(bH){return !!bH&&qx.bom.Selector.matches(bH,this).length>0;
},__ph:/^.[^:#\[\.,]*$/,not:function(bI){if(this.__ph.test(bI)){var bJ=qx.bom.Selector.matches(g+bI+d,this);
return this.__pj(bJ);
}var bJ=qx.bom.Selector.matches(bI,this);
return this.filter(function(bK){return bJ.indexOf(bK)===-1;
});
},add:function(bL,bM){var bN=qx.bom.Selector.query(bL,bM);
var bO=qx.lang.Array.unique(this.concat(bN));
return this.__pj(bO);
},children:function(bP){var bQ=[];

for(var i=0,l=this.length;i<l;i++){bQ.push.apply(bQ,qx.dom.Hierarchy.getChildElements(this[i]));
}
if(bP){bQ=qx.bom.Selector.matches(bP,bQ);
}return this.__pj(bQ);
},closest:function(bR){var bS=new qx.bom.Collection(1);
var bU=qx.bom.Selector;
var bT=this.map(function(bV){while(bV&&bV.ownerDocument){bS[0]=bV;

if(bU.matches(bR,bS).length>0){return bV;
}bV=bV.parentNode;
}});
return this.__pj(qx.lang.Array.unique(bT));
},contents:function(){var bX=[];
var bW=qx.lang.Array;

for(var i=0,l=this.length;i<l;i++){bX.push.apply(bX,bW.fromCollection(this[i].childNodes));
}return this.__pj(bX);
},find:function(bY){var cb=qx.bom.Selector;
if(this.length===1){return this.__pj(cb.query(bY,this[0]));
}else{var ca=[];

for(var i=0,l=this.length;i<l;i++){ca.push.apply(ca,cb.query(bY,this[i]));
}return this.__pj(qx.lang.Array.unique(ca));
}},next:function(cc){var cd=qx.dom.Hierarchy;
var ce=this.map(cd.getNextElementSibling,cd);
if(cc){ce=qx.bom.Selector.matches(cc,ce);
}return this.__pj(ce);
},nextAll:function(cf){return this.__pi(y,cf);
},prev:function(cg){var ch=qx.dom.Hierarchy;
var ci=this.map(ch.getPreviousElementSibling,ch);
if(cg){ci=qx.bom.Selector.matches(cg,ci);
}return this.__pj(ci);
},prevAll:function(cj){return this.__pi(c,cj);
},parent:function(ck){var Element=qx.dom.Element;
var cl=qx.lang.Array.unique(this.map(Element.getParentElement,Element));
if(ck){cl=qx.bom.Selector.matches(ck,cl);
}return this.__pj(cl);
},parents:function(cm){return this.__pi(H,cm);
},siblings:function(cn){return this.__pi(s,cn);
},__pi:function(co,cp){var cr=[];
var cq=qx.dom.Hierarchy;

for(var i=0,l=this.length;i<l;i++){cr.push.apply(cr,cq[co](this[i]));
}var cs=qx.lang.Array.unique(cr);
if(cp){cs=qx.bom.Selector.matches(cp,cs);
}return this.__pj(cs);
},__pj:function(ct){var cu=new qx.bom.Collection;
cu.__pg=this;
ct=Array.prototype.slice.call(ct,0);
cu.push.apply(cu,ct);
return cu;
},andSelf:function(){return this.add(this.__pg);
},end:function(){return this.__pg||new qx.bom.Collection();
},__pk:function(cv,cw){var cB=this[0];
var cA=cB.ownerDocument||cB;
var cz=cA.createDocumentFragment();
var cD=qx.bom.Html.clean(cv,cA,cz);
var cF=cz.firstChild;
if(cF){var cx=this.length-1;

for(var i=0,l=cx;i<l;i++){cw.call(this,this[i],cz.cloneNode(true));
}cw.call(this,this[cx],cz);
}if(cD){var cy;
var cE=qx.io.ScriptLoader;
var cC=qx.lang.Function;

for(var i=0,l=cD.length;i<l;i++){cy=cD[i];
if(cy.src){cE.get().load(cy.src);
}else{cC.globalEval(cy.text||cy.textContent||cy.innerHTML||B);
}if(cy.parentNode){cy.parentNode.removeChild(cy);
}}}return this;
},__pl:function(cG,cH){var cJ=qx.bom.Selector;
var cI=qx.lang.Array;
var cL=[];

for(var i=0,l=cG.length;i<l;i++){cL.push.apply(cL,cJ.query(cG[i]));
}cL=cI.cast(cI.unique(cL),qx.bom.Collection);
for(var i=0,cK=this.length;i<cK;i++){cL[cH](this[i]);
}return this;
},append:function(cM){return this.__pk(arguments,this.__pm);
},prepend:function(cN){return this.__pk(arguments,this.__pn);
},__pm:function(cO,cP){cO.appendChild(cP);
},__pn:function(cQ,cR){cQ.insertBefore(cR,cQ.firstChild);
},appendTo:function(cS){return this.__pl(arguments,e);
},prependTo:function(cT){return this.__pl(arguments,J);
},before:function(cU){return this.__pk(arguments,this.__po);
},after:function(cV){return this.__pk(arguments,this.__pp);
},__po:function(cW,cX){cW.parentNode.insertBefore(cX,cW);
},__pp:function(cY,da){cY.parentNode.insertBefore(da,cY.nextSibling);
},insertBefore:function(db){return this.__pl(arguments,w);
},insertAfter:function(dc){return this.__pl(arguments,q);
},wrapAll:function(content){var de=this[0];

if(de){var dd=qx.bom.Collection.create(content,de.ownerDocument).clone();
if(de.parentNode){de.parentNode.insertBefore(dd[0],de);
}dd.map(this.__pq).append(this);
}return this;
},__pq:function(df){while(df.firstChild){df=df.firstChild;
}return df;
},wrapInner:function(content){var dg=new qx.bom.Collection(1);

for(var i=0,l=this.length;i<l;i++){dg[0]=this[i];
dg.contents().wrapAll(content);
}return this;
},wrap:function(content){var dh=new qx.bom.Collection(1);
for(var i=0,l=this.length;i<l;i++){dh[0]=this[i];
dh.wrapAll(content);
}return this;
},replaceWith:function(content){return this.after(content).remove();
},replaceAll:function(di){return this.__pl(arguments,n);
},remove:function(dj){var dl=this;

if(dj){dl=this.filter(dj);

if(dl.length==0){return this;
}}for(var i=0,dm=dl.length,dk;i<dm;i++){dk=dl[i];

if(dk.parentNode){dk.parentNode.removeChild(dk);
}}return dl;
},destroy:function(dn){if(this.length==0){return this;
}var dq=qx.bom.Selector;
var dt=this;

if(dn){dt=this.filter(dn);

if(dt.length==0){return this;
}}var ds=qx.event.Registration.getManager(this[0]);

for(var i=0,l=dt.length,dr,du;i<l;i++){dr=dt[i];
ds.removeAllListeners(dr);
du=dq.query(C,dr);

for(var j=0,dp=du.length;j<dp;j++){ds.removeAllListeners(du[j]);
}if(dr.parentNode){dr.parentNode.removeChild(dr);
}}if(dn){dt.end();
qx.lang.Array.exclude(this,dt);
}else{this.length=0;
}return this;
},empty:function(){var dv=qx.bom.Collection;

for(var i=0,l=this.length;i<l;i++){dv.query(E,this[i]).destroy();
while(this.firstChild){this.removeChild(this.firstChild);
}}return this;
},clone:function(dw){var Element=qx.bom.Element;
return dw?this.map(function(dx){return Element.clone(dx,true);
}):this.map(Element.clone,Element);
}},defer:function(dy){if(window.$==null){window.$=dy.create;
}}});
})();
})();
(function(){var m="string",k="script",h="<table>",g="engine.name",f="<fieldset>",e="<select multiple='multiple'>",d="</div>",c="</select>",b="</tr></tbody></table>",a="<col",J="div",I="<table><tbody><tr>",H=">",G="<table><tbody></tbody><colgroup>",F="<th",E="</tbody></table>",D="<td",C="</colgroup></table>",B="<opt",A="text/javascript",t="",u="</fieldset>",r="<table><tbody>",s="div<div>",p="<table",q="mshtml",n="qx.bom.Html",o="<leg",v="tbody",w="<tr",y="</table>",x="undefined",z="></";
qx.Class.define(n,{statics:{__pr:function(K,L,M){return M.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?K:L+z+M+H;
},__ps:{opt:[1,e,c],leg:[1,f,u],table:[1,h,y],tr:[2,r,E],td:[3,I,b],col:[2,G,C],def:qx.core.Environment.select(g,{"mshtml":[1,s,d],"default":null})},__pt:function(N,O){var U=O.createElement(J);
N=N.replace(/(<(\w+)[^>]*?)\/>/g,this.__pr);
var Q=N.replace(/^\s+/,t).substring(0,5).toLowerCase();
var T,P=this.__ps;

if(!Q.indexOf(B)){T=P.opt;
}else if(!Q.indexOf(o)){T=P.leg;
}else if(Q.match(/^<(thead|tbody|tfoot|colg|cap)/)){T=P.table;
}else if(!Q.indexOf(w)){T=P.tr;
}else if(!Q.indexOf(D)||!Q.indexOf(F)){T=P.td;
}else if(!Q.indexOf(a)){T=P.col;
}else{T=P.def;
}if(T){U.innerHTML=T[1]+N+T[2];
var S=T[0];

while(S--){U=U.lastChild;
}}else{U.innerHTML=N;
}if((qx.core.Environment.get(g)==q)){var V=/<tbody/i.test(N);
var R=!Q.indexOf(p)&&!V?U.firstChild&&U.firstChild.childNodes:T[1]==h&&!V?U.childNodes:[];

for(var j=R.length-1;j>=0;--j){if(R[j].tagName.toLowerCase()===v&&!R[j].childNodes.length){R[j].parentNode.removeChild(R[j]);
}}if(/^\s/.test(N)){U.insertBefore(O.createTextNode(N.match(/^\s*/)[0]),U.firstChild);
}}return qx.lang.Array.fromCollection(U.childNodes);
},clean:function(W,X,Y){X=X||document;
if(typeof X.createElement===x){X=X.ownerDocument||X[0]&&X[0].ownerDocument||document;
}if(!Y&&W.length===1&&typeof W[0]===m){var bg=/^<(\w+)\s*\/?>$/.exec(W[0]);

if(bg){return [X.createElement(bg[1])];
}}var ba,bc=[];

for(var i=0,l=W.length;i<l;i++){ba=W[i];
if(typeof ba===m){ba=this.__pt(ba,X);
}if(ba.nodeType){bc.push(ba);
}else if(ba instanceof qx.type.BaseArray){bc.push.apply(bc,Array.prototype.slice.call(ba,0));
}else if(ba.toElement){bc.push(ba.toElement());
}else{bc.push.apply(bc,ba);
}}if(Y){var bf=[],be=qx.lang.Array,bd,bb;

for(var i=0;bc[i];i++){bd=bc[i];

if(bd.nodeType==1&&bd.tagName.toLowerCase()===k&&(!bd.type||bd.type.toLowerCase()===A)){if(bd.parentNode){bd.parentNode.removeChild(bc[i]);
}bf.push(bd);
}else{if(bd.nodeType===1){bb=be.fromCollection(bd.getElementsByTagName(k));
bc.splice.apply(bc,[i+1,0].concat(bb));
}Y.appendChild(bd);
}}return bf;
}return bc;
}}});
})();
(function(){var p="success",o="fail",n="mshtml",m="complete",l="error",k="load",j="opera",i="loaded",h="readystatechange",g="head",c="webkit",f="script",d="qx.io.ScriptLoader",b="text/javascript",a="abort";
qx.Bootstrap.define(d,{construct:function(){this.__pu=qx.Bootstrap.bind(this.__py,this);
this.__pv=document.createElement(f);
},statics:{TIMEOUT:15},members:{__pw:null,__px:null,__bC:null,__bD:null,__pu:null,__pv:null,load:function(q,r,s){if(this.__pw){throw new Error("Another request is still running!");
}this.__pw=true;
this.__px=false;
var t=document.getElementsByTagName(g)[0];
var u=this.__pv;
this.__bC=r||null;
this.__bD=s||window;
u.type=b;
u.onerror=u.onload=u.onreadystatechange=this.__pu;
var self=this;
if(qx.bom.client.Engine.getName()===j&&this._getTimeout()>0){setTimeout(function(){self.dispose(o);
},this._getTimeout()*1000);
}u.src=q;
setTimeout(function(){t.appendChild(u);
},0);
},abort:function(){if(this.__pw){this.dispose(a);
}},dispose:function(status){if(this.__px){return;
}this.__px=true;
var x=this.__pv;
x.onerror=x.onload=x.onreadystatechange=null;
var w=x.parentNode;

if(w){w.removeChild(x);
}delete this.__pw;
if(this.__bC){var v=qx.bom.client.Engine.getName();

if(v==n||v==c){var self=this;
setTimeout(qx.event.GlobalError.observeMethod(function(){self.__bC.call(self.__bD,status);
delete self.__bC;
}),0);
}else{this.__bC.call(this.__bD,status);
delete this.__bC;
}}},_getTimeout:function(){return qx.io.ScriptLoader.TIMEOUT;
},__py:qx.event.GlobalError.observeMethod(function(e){var y=qx.bom.client.Engine.getName();
if(y==n){var z=this.__pv.readyState;

if(z==i){this.dispose(p);
}else if(z==m){this.dispose(p);
}else{return;
}}else if(y==j){if(qx.Bootstrap.isString(e)||e.type===l){return this.dispose(o);
}else if(e.type===k){return this.dispose(p);
}else{return;
}}else{if(qx.Bootstrap.isString(e)||e.type===l){this.dispose(o);
}else if(e.type===k){this.dispose(p);
}else if(e.type===h&&(e.target.readyState===m||e.target.readyState===i)){this.dispose(p);
}else{return;
}}})}});
})();
(function(){var s="tooltip",r="Sound Notification",q="label",p="audioName",o="Choose a sound to be played in browser when alarm fires",n="track.rules.SoundNotificationGroup",m="Sound",k="changeValue",j="execute",h="groupbox title",c="audioName=",g="Test",f="22/testSend.png",b="button",a="soundTestButton.enabled",d="Activate to have sound notification in browser when alarm fires";
qx.Class.define(n,{extend:qx.ui.groupbox.GroupBox,include:[qx.locale.MTranslation],construct:function(t){qx.ui.groupbox.GroupBox.call(this);
this.setLegend(this.trc(h,r));
this.setLayout(new qx.ui.layout.HBox(5));
this.trackGui=t;
this.soundCheckBox=null;
this.soundChooser=null;
this.soundTestButton=null;
this.soundTestButtonEnabled=xbProperties.getBoolean(a,true);
this.created=false;
},members:{create:function(u){this.setContentPadding(u||12);
this.soundCheckBox=new qx.ui.form.CheckBox(this.trc(q,m));
this.soundChooser=new track.util.SoundChooser();
this.soundTestButton=new qx.ui.form.Button(this.trc(b,g),xbGetIcon(f));
this.soundCheckBox.setToolTipText(this.trc(s,d));
this.soundChooser.setToolTipText(this.trc(s,o));
this.soundCheckBox.addListener(k,function(e){var v=e.getData();
this.__pz(v);
},this);
this.soundTestButton.addListener(j,function(e){this.soundChooser.playSound();
this.soundTestButton.setEnabled(false);

if(this.soundTestButtonEnabled){qx.event.Timer.once(function(e){this.soundTestButton.setEnabled(true);
},this,1000);
}},this);
this.add(this.soundCheckBox,{flex:2});
this.add(this.soundChooser,{flex:1});
this.add(this.soundTestButton);
this.__pz(false);
this.created=true;
return this;
},__pz:function(w){this.soundCheckBox.setValue(w);
this.soundChooser.setEnabled(w);
this.soundTestButton.setEnabled(this.soundTestButtonEnabled&&w);
},fillEventSinkTOFromGui:function(x){var x=x||null;

if(!this.created||x==null)return x;

if(this.soundCheckBox.getValue()){var y=this.soundChooser.getSelectedSound();
x.setInfo(c+y);
}return x;
},onChangeSelectedRuleTypeEnum:function(z){if(!this.created)return;
},onChangeSelectedRuleName:function(A){if(!this.created)return;
this.soundChooser.reset();
this.__pz(false);

if(A==null){return;
}var B=A.getEventSinkTOs(net.watchee.EventSinkTypeEnum.BROWSER);

if(B.length>0){for(var i=0,l=B.length;i<l;i++){var C=B[i].getInfoMap().get(p,null);
if(C!=null){if(this.soundChooser.setSelectedSound(C))this.__pz(true);
}}}}}});
})();
(function(){var f="audio",e="zoom",d="16/apps/media-audio-player.png",c="splat",b="clickon",a="track.util.SoundChooser";
qx.Class.define(a,{extend:qx.ui.form.SelectBox,construct:function(){qx.ui.form.SelectBox.call(this);
this.ListItemAssozArray=new Object();
this.addSounds([e,c,b]);
},members:{addSounds:function(g){for(var i=0;i<g.length;i++){var h=g[i];
this.ListItemAssozArray[h]=this.__pA(h);
this.add(this.ListItemAssozArray[h]);
}},__pA:function(j){var k=new qx.ui.form.ListItem(j,xbGetQxIcon(d));
k.setUserData(f,j);
return k;
},playSound:function(){net.watchee.playSound(this.getSelectedSoundFull(),this.getSelectedSoundFull(),this);
},setSelectedSound:function(l){if(this.ListItemAssozArray.hasOwnProperty(l)){this.setSelection([this.ListItemAssozArray[l]]);
return true;
}return false;
},getSelectedSound:function(){return this.getSelection()[0].getUserData(f);
},getSelectedSoundFull:function(){return xbGetSound(this.getSelectedSound());
},reset:function(){this.resetSelection();
}}});
})();
(function(){var p="",o="tooltip",n=",",m="type",k="label",j="=",h="infoMsgBox",g="<clientProperty name='",f="GET",d="'>",bv="</clientProperty>",bu="&comma;",bt="errorMsgBox",bs="red",br="sendTestRest",bq="&lt;",bp="Available for enterprise customers only",bo="&amp;",bn="POST",bm="</pre></div>",w="&",x="Choose the HTTP GET method. Defines to transfer the data (key/value pairs) as URL parameters",u="Please enter a valid REST URI of your server",v="button",s="<p style='color:green'>",t="<p style='color:red'>REST call failed with HTTP status=%1</p><p>Error code: <span style='color:red'>%2</span></p>",q="URL/FORM parameter",r="focus",E="Response from REST:",F="basic",R="Rest Webservice",N="<p>REST request is sent to <br /><code>%1</code></p><ul><li>We wait %2 seconds for the response to arrive</li><li>Check your REST server to see the call</li></ol>",ba="changeValue",U="REST Webservice Call",bi="green",bf="Login name",J="execute",bl="msgUnit",bk="track.rules.RestWebserviceGroup",bj="16/status/security-high.png",I="TextArea",L="RestWebServiceGroup",M="<p style='color:red'>REST response timed out after %1 seconds.</p>The service did not respond, please check the URI and if your service is running and reachable",P="select",S="middle",V="22/testSend.png",bc="Enter an optional password if your REST server expects one",bh="Password",y="Calling REST is for enterprise customers only, the REST configuration is not saved",z="http://myserver.com/rest?mykey=test",K="Choose the HTTP POST method. Transfer the data (key/value pairs) as form parameters",Y="16/status/security-medium.png",X="restsend",W="selct",be="Choose the HTTP authentication schema to use",bd="right",T="Will send given login name and password with a 'Basic authentication HTTP header' according to RFC 2617",bb="Calling REST is for enterprise customers only",a="Please check your REST URL",bg="restTestButton.enabled",A="Enter an optional login name if your REST server expects one",B="Enter the HTTP URL to contact your REST server",O="</p><div style='overflow-x:scroll; overflow-y:scroll; width:700px; height:500px;'><pre>",b="Will append '&_loginName=joe&_password=blabla' to the called URL",c="Enable to transfer alarms automatically to your REST Webservice. The data is transfered as key/value pair, please call the support to get the format description of the keys used",H="param",C="<br /><br /><div style='overflow-x:scroll; overflow-y:scroll; width:520px; height:300px;'><pre>",D="groupbox title",G="Basic access authentication",Q="Test";
qx.Class.define(bk,{extend:qx.ui.groupbox.GroupBox,include:[qx.locale.MTranslation],construct:function(bw){qx.ui.groupbox.GroupBox.call(this);
this.setLegend(this.trc(D,R));
this.layout=new qx.ui.layout.Grid(5,5);
this.setLayout(this.layout);
this.trackGui=bw;
this.restCheckBox=null;
this.restTextArea=null;
this.restTextAreaExample=this.trc(I,z);
this.restTestButton=null;
this.restTestButtonEnabled=xbProperties.getBoolean(bg,true);
this.created=false;
this.responseTimeoutSec=30;
this.infoBox=null;
this.KEY_BASEURL="_baseUrl";
this.KEY_REMOTE_CLIENT_CLASSNAME="_remoteClientClassName";
this.VALUE_REMOTE_CLIENT_CLASSNAME="net.watchee.queuegateway.rest.RestClient";
this.VALUE_POLLER="POLL";
this.KEY_ACKTOPIC="_ackTopic";
this.TOPICID_QUEUEGATEWAY_RESPONSE="queueGatewayResponse";
this.KEY_REPLY_TO=org.xmlBlaster.client.KEY_REPLY_TO;
this.KEY_ON_ERROR="_onError";
this.VALUE_ON_ERROR_RETRY="RETRY";
this.VALUE_ON_ERROR_INACTIVATE="INACTIVATE";
this.VALUE_ON_ERROR_DROP_MESSAGE="DROP_MESSAGE";
this.KEY_WFGUID="wfguid";
this.KEY_BOUNCEID="bounceId";
this.KEY_BOUNCE="bounce";
this.KEY_LOGINNAME="_loginName";
this.KEY_PASSWORD="_password";
this.KEY_REST_CALL_ENABLED="_restCallEnabled";
this.KEY_AUTH_SCHEME="_authScheme";
this.KEY_SSL="_ssl";
this.KEY_SSL_PORT="_sslPort";
this.KEY_HTTP_REQUEST_METHOD="_httpRequestMethod";
this.KEY_HTTP_STATUSCODE="_httpStatusCode";
this.KEY_CONTENT="_content";
this.EXCEPTION_ERROR_CODE="exception.errorCode";
this.EXCEPTION_ERROR_MESSAGE="exception.message";
},members:{create:function(bx){this.setContentPadding(bx||12);
this.restCheckBox=new qx.ui.form.CheckBox(this.trc(k,U));
this.restCheckBox.setToolTipText(this.trc(o,c));
this.restCheckBox.addListener(ba,function(e){var bD=e.getData();
this.__pC(bD);
},this);
this.restTextArea=new qx.ui.form.TextField(this.restTextAreaExample);
this.restTextArea.setToolTipText(this.trc(o,B));
this.restTextArea.addListener(r,function(e){if(this.__pE(false)==this.restTextAreaExample)this.restTextArea.setValue(p);
},this);
var bz=new qx.ui.form.RadioGroup();
this.getRadio=new qx.ui.form.RadioButton(f);
this.getRadio.setToolTipText(this.trc(o,x));
this.postRadio=new qx.ui.form.RadioButton(bn);
this.postRadio.setToolTipText(this.trc(o,K));
bz.add(this.getRadio);
bz.add(this.postRadio);
this.loginLabel=new qx.ui.basic.Label(this.trc(k,bf));
this.loginLabel.setToolTipText(this.trc(o,A));
this.passwdLabel=new qx.ui.basic.Label(this.trc(k,bh));
this.passwdLabel.setToolTipText(this.trc(o,bc));
this.loginField=new qx.ui.form.TextField();
this.passwdField=new qx.ui.form.TextField();
this.authSchemeSelectBox=new qx.ui.form.SelectBox();
var by=new qx.ui.form.ListItem(this.trc(W,G),xbGetQxIcon(bj));
by.setToolTipText(this.trc(o,T));
by.setUserData(m,F);
var bB=new qx.ui.form.ListItem(this.trc(P,q),xbGetQxIcon(Y));
bB.setToolTipText(this.trc(o,b));
bB.setUserData(m,H);
this.authSchemeSelectBox.add(by);
this.authSchemeSelectBox.add(bB);
this.authSchemeSelectBox.setToolTipText(this.trc(o,be));
this.restTestButton=new qx.ui.form.Button(this.trc(v,Q),xbGetIcon(V));
this.restTestButton.addListener(J,function(e){if(this.trackGui.watchee==null)return;

if(this.sendTestRests()==false)return;
this.restTestButton.setEnabled(false);

if(this.restTestButtonEnabled){qx.event.Timer.once(function(e){this.restTestButton.setEnabled(true);
},this,this.responseTimeoutSec*1000);
}},this);
var bC=0;
this.add(this.restCheckBox,{row:bC,column:0,colSpan:3});
this.add(this.getRadio,{row:bC,column:3});
this.add(this.postRadio,{row:bC++,column:4});
this.add(this.restTextArea,{row:bC++,column:0,colSpan:5});
this.add(this.loginLabel,{row:bC,column:0});
this.add(this.loginField,{row:bC,column:1});
this.add(this.authSchemeSelectBox,{row:bC++,column:2,colSpan:2});
this.add(this.passwdLabel,{row:bC,column:0});
this.add(this.passwdField,{row:bC,column:1});
this.add(this.restTestButton,{row:(bC-1),column:4,rowSpan:2});
bC++;
this.infoLabel=new qx.ui.basic.Label(p);
this.add(this.infoLabel,{row:bC++,column:0,colSpan:5});

if(!this.trackGui.getMyAccountTO().hasPermissionRestWebService()){this.__pB(this.trc(k,bp),bs);
}this.layout.setRowFlex(1,1);
this.layout.setColumnFlex(2,1);
this.layout.setColumnAlign(4,bd,S);
var bA=1;
this.restCheckBox.setTabIndex(bA++);
this.getRadio.setTabIndex(bA++);
this.postRadio.setTabIndex(bA++);
this.restTextArea.setTabIndex(bA++);
this.loginField.setTabIndex(bA++);
this.passwdField.setTabIndex(bA++);
this.authSchemeSelectBox.setTabIndex(bA++);
this.restTestButton.setTabIndex(bA++);
this.__pC(false);
this.created=true;
return this;
},__pB:function(bE,bF){this.infoLabel.setValue(bE);
this.infoLabel.setTextColor(bF);
},__pC:function(bG){this.info("restCheckBox "+bG);
this.restCheckBox.setValue(bG);
this.restTextArea.setEnabled(bG);
this.restTestButton.setEnabled(this.restTestButtonEnabled&&bG);
this.getRadio.setEnabled(bG);
this.postRadio.setEnabled(bG);
this.loginLabel.setEnabled(bG);
this.loginField.setEnabled(bG);
this.authSchemeSelectBox.setEnabled(bG);
this.passwdLabel.setEnabled(bG);
this.passwdField.setEnabled(bG);
},__pD:function(){this.loginField.setValue(p);
this.passwdField.setValue(p);
},__pE:function(bH){var bH=org.xmlBlaster.util.toBoolean(bH,true);
var bI=400;
var bJ=this.restTextArea.getValue();
bJ=org.xmlBlaster.util.trim(bJ);

if(bJ.length>bI){bJ=bJ.substring(0,bI);
bJ=org.xmlBlaster.util.trim(bJ);
this.restTextArea.setValue(bJ);
}
if(bH&&bJ!=null&&bJ.length>8){if(bJ.indexOf(w)!=-1&&bJ.indexOf(bo)==-1){bJ=org.xmlBlaster.util.replaceAllTokens(bJ,w,bo);
}}return bJ;
},__pF:function(){if(this.getRadio.isValue())return f;
else if(this.postRadio.isValue())return bn;
else return f;
},__pG:function(bK){var bK=bK||null;

if(bK==null||bK==p||bK==f){this.getRadio.setValue(true);
return true;
}else{this.getRadio.setValue(false);
return false;
}},sendTestRests:function(){if(!this.trackGui.getSessionProfile().hasPermissionForRestSending()){this.trackGui.infoMsgBox(this.trc(h,bb));
return false;
}var bP=this.trackGui.getMyAbsoluteSessionNameStr();
var bU=this.trackGui.getBounceNextVal(L);
var bL=X;
var bQ=new net.watchee.PropertyCollection();
var bO=this.__pE(true);

if(bO==null||bO.length<5){this.trackGui.infoMsgBox(this.trc(h,u));
return false;
}var bS=new net.watchee.PropertyPair(this.KEY_BASEURL,bO);
bQ.add(bS);
var bM=this.loginField.getValue();
var bT=this.passwdField.getValue();

if(bM&&bM.length>0){var bS=new net.watchee.PropertyPair(this.KEY_LOGINNAME,bM);
bQ.add(bS);

if(bT&&bT.length>0){var bS=new net.watchee.PropertyPair(this.KEY_PASSWORD,bT);
bQ.add(bS);
}}var bS=new net.watchee.PropertyPair(this.KEY_HTTP_REQUEST_METHOD,this.__pF());
bQ.add(bS);
var bS=new net.watchee.PropertyPair(this.KEY_ACKTOPIC,this.TOPICID_QUEUEGATEWAY_RESPONSE);
bQ.add(bS);
var bS=new net.watchee.PropertyPair(this.KEY_WFGUID,org.xmlBlaster.util.getCurrentIsoGmtTimestampStr(null,true,true));
bQ.add(bS);
var bS=new net.watchee.PropertyPair(this.KEY_BOUNCE,bU);
bQ.add(bS);
var bS=new net.watchee.PropertyPair(this.KEY_REPLY_TO,bP);
bQ.add(bS);
var bS=new net.watchee.PropertyPair(this.KEY_ON_ERROR,this.VALUE_ON_ERROR_DROP_MESSAGE);
bQ.add(bS);
var bS=new net.watchee.PropertyPair(this.KEY_AUTH_SCHEME,this.authSchemeSelectBox.getSelection()[0].getUserData(m));
bQ.add(bS);
var content=bQ.toXml();
var bR=org.xmlBlaster.util.PropTO.VALUE_RESULTMIME_PROPERTYCOLLECTION;
var bN=g+org.xmlBlaster.client.KEY_REPLY_TO+d+org.xmlBlaster.util.escapeXml(bP)+bv+g+this.KEY_BOUNCE+d+org.xmlBlaster.util.escapeXml(bU)+bv+g+org.xmlBlaster.util.escapeXml(this.KEY_BASEURL)+d+org.xmlBlaster.util.escapeXml(bO)+bv+g+this.KEY_REMOTE_CLIENT_CLASSNAME+d+org.xmlBlaster.util.escapeXml(this.VALUE_REMOTE_CLIENT_CLASSNAME)+bv;
this.trackGui.getRequestResponseDispatcher().registerRequest(bU,this.responseTimeoutSec,this.onRestResponse,this,br,false);
this.trackGui.watchee.publishContent(bL,content,bN,this.trackGui.returnQosOrException,this.trackGui,br,bR);
this.infoBox=this.trackGui.ajaxMsgBox(this.trc(h,N,bO,this.responseTimeoutSec));
return true;
},closeInfoBox:function(){if(this.infoBox!=null){try{this.infoBox.close();
this.trackGui.getMyRoot().remove(this.infoBox);
this.infoBox=null;
}catch(bV){;
}}},onRestResponse:function(bW,bX,bY){this.closeInfoBox();
this.restTestButton.setEnabled(true);

if(bW!=null){var ce=bW.getProp(bl).getValueRaw();
var cc=ce.getQosData().getClientProperty(this.EXCEPTION_ERROR_CODE,null);
var cb=ce.getQosData().getClientProperty(this.EXCEPTION_ERROR_MESSAGE,null);
var cd=ce.getQosData().getClientProperty(this.KEY_HTTP_STATUSCODE,0);

if(cc==null){var ca=this.trc(h,E);
var content=ce.getContentStr();
content=content.replace(/</g,bq);
this.trackGui.infoMsgBox(s+ca+O+content+bm);
}else{var ca=this.trc(bt,t,cd,cc);
content=cb.replace(/</g,bq);
this.trackGui.errorMsgBox(ca+C+content+bm);
}}else{this.trackGui.errorMsgBox(this.trc(bt,M,this.responseTimeoutSec));
}},getEventSinksTOFromGui:function(){var cj=[];

if(!this.created)return cj;
var ch=this.restCheckBox.getValue();

if(!this.trackGui.getMyAccountTO().hasPermissionRestWebService()){this.__pB(this.trc(h,y),bs);
ch=false;
}else{this.__pB(p,bi);
}var cg=this.__pE(false);

if(cg!=null&&cg.length>8){cg=org.xmlBlaster.util.replaceAllTokens(cg,n,bu);
var cf=this.loginField.getValue();

if(cf==null)cf=p;
cf=org.xmlBlaster.util.replaceAllTokens(cf,n,bu);
var cl=this.passwdField.getValue();

if(cl==null)cl=p;
cl=org.xmlBlaster.util.replaceAllTokens(cl,n,bu);
var ci=this.authSchemeSelectBox.getSelection()[0].getUserData(m);
var ck=new track.rulesmodel.EventSinkTO(this.trackGui,null);
ck.setExpression(cg);
ck.setEventSinkTypeEnum(net.watchee.EventSinkTypeEnum.REST);
ck.setInfo(this.KEY_LOGINNAME+j+cf+n+this.KEY_PASSWORD+j+cl+n+this.KEY_HTTP_REQUEST_METHOD+j+this.__pF()+n+this.KEY_AUTH_SCHEME+j+ci+n+this.KEY_REST_CALL_ENABLED+j+ch);
cj.push(ck);
}else{this.trackGui.errorMsgBox(this.trc(bt,a));
}return cj;
},onChangeSelectedRuleTypeEnum:function(cm){if(!this.created)return;
},onChangeSelectedRuleName:function(cn){if(!this.created)return;

if(cn==null){this.restTextArea.setValue(this.restTextAreaExample);
this.__pC(false);
this.__pD();

if(!this.trackGui.getMyAccountTO().hasPermissionRestWebService()){this.__pB(this.trc(k,bp),bs);
}return;
}var cr=cn.getEventSinkTOs(net.watchee.EventSinkTypeEnum.REST);

for(var i=0,l=cr.length;i<l;i++){var cu=cr[i].getExpression();
var cp=cr[i].getInfoMap();

if(cu!=null){var ct=cp.get(this.KEY_HTTP_REQUEST_METHOD,null);
var cq=cp.get(this.KEY_LOGINNAME,p);
var cv=cp.get(this.KEY_PASSWORD,p);
var co=cp.get(this.KEY_AUTH_SCHEME,null);
this.restTextArea.setValue(cu);
this.__pG(this.httpRequestMethod);
this.loginField.setValue(cq);
this.passwdField.setValue(cv);
track.util.GuiUtils.selectByUserData(this.authSchemeSelectBox,m,co);
var cs=cp.get(this.KEY_REST_CALL_ENABLED,false);
this.__pC(cs);
}else{this.restTextArea.setValue(this.restTextAreaExample);
this.__pC(false);
}}}}});
})();
(function(){var m="label",k="oldVal",j="changeValue",h="ioAliasNames",g="middle",f="VoutputRepeat",d="Son",c="tooltip",b="VoutputNumber",a="VoutputPeriodicTimeSec",G="Port",F="How many times to repeat the period, 0 is forever, 1 is a timeout with half the period length",E="Blink",D="On",C=" s",B=" / ",A="track.rules.OutputActionGroup",z="Is not supported by device",y="center",x=".labelOff",t="Repetitions",u="",r="Period",s=".labelOn",p="right",q="Output Actions On Alarm",n="Time for a complete on - off cycle. First, the output is switched on for half a period, then turned off for the other half",o="Off",v="groupbox title",w="OUT";
qx.Class.define(A,{extend:qx.ui.groupbox.GroupBox,include:[qx.locale.MTranslation],construct:function(H,I){qx.ui.groupbox.GroupBox.call(this);
this.trackGui=H;
this.masterWindow=I||null;
this.setLegend(this.trc(v,q));
this.setLayout(new qx.ui.layout.Grow());
this.stack=new qx.ui.container.Stack();
this.stack.setDynamic(true);
this.created=false;
this.outputCount=4;
this.guiElements=[];
this.currentDeviceInfo=null;
},members:{create:function(J){this.setContentPadding(3);
this.boxNoSupport=new qx.ui.container.Composite(new qx.ui.layout.HBox(2));
this.boxNoSupport.add(new qx.ui.basic.Label(this.trc(m,z)));
this.stack.add(this.boxNoSupport);
this.boxSupport=this._createOutputControlBox();
this.stack.add(this.boxSupport);
this.stack.setSelection([this.boxSupport]);
this.add(this.stack);
this.created=true;
return this;
},_createOutputControlBox:function(){var L=new qx.ui.container.Composite();
var Q=new qx.ui.layout.Grid(12,2);
var O=0;
var P=0,ba=1,K=2,bd=3,V=4,bb=5;
Q.setColumnAlign(P,p,g);
Q.setColumnAlign(bd,y,g);
L.setLayout(Q);
L.add(new qx.ui.basic.Label(this.trc(m,G)),{row:O,column:P});
L.add(new qx.ui.basic.Label(this.trc(m,D)),{row:O,column:ba});
L.add(new qx.ui.basic.Label(this.trc(m,o)),{row:O,column:K});
L.add(new qx.ui.basic.Label(this.trc(m,E)),{row:O,column:bd});
L.add(new qx.ui.basic.Label(this.trc(m,r)),{row:O,column:V});
L.add(new qx.ui.basic.Label(this.trc(m,t)),{row:O++,column:bb});
var S=function(bg,bh){return function(e){var bi=e.getData();
bg.setEnabled(bi);
bh.setEnabled(bi);

if(bi){bg.setValue(bg.getUserData(k));
bg.setMinimum(0.2);
bh.setValue(bh.getUserData(k));
}else{bg.setUserData(k,bg.getValue());
bh.setUserData(k,bh.getValue());
bg.setMinimum(0);
bg.setValue(0);
bh.setValue(0);
}};
};
var be=function(bj){return function(e){var bk=e.getData();
bj.onRadio.setEnabled(bk);
bj.offRadio.setEnabled(bk);
bj.flashModeCheckBox.setEnabled(bk);

if(bk){bj.flashModeCheckBox.fireDataEvent(j,bj.flashModeCheckBox.getValue());
}else{bj.periodSpinner.setEnabled(false);
bj.repetitionsSpinner.setEnabled(false);
}};
};
var T=function(bl){return function(e){var bm=e.getData();
bl.setEnabled(bm);

if(!bm)bl.setValue(false);
};
};

for(var i=0;i<this.outputCount;i++){var U=i+1;
var bc=new qx.ui.form.CheckBox(w+U);
L.add(bc,{row:O,column:P});
var N=new qx.ui.form.CheckBox();
L.add(N,{row:O,column:bd});
var R=new qx.ui.form.Spinner(0,1,track.deviceconf.OutputControlTab.MAX_PERIOD_SEC);
R.setSingleStep(0.2);
R.setPageStep(1);
var Y=new qx.util.format.NumberFormat();
Y.setMaximumFractionDigits(1);
Y.setPostfix(C);
R.setNumberFormat(Y);
L.add(R,{row:O,column:V});
R.setUserData(k,R.getValue());
R.setToolTipText(this.trc(c,n));
var X=new qx.ui.form.Spinner(0,3,track.deviceconf.OutputControlTab.MAX_TOGGLE_TIMES);
L.add(X,{row:O,column:bb});
X.setUserData(k,X.getValue());
X.setToolTipText(this.trc(c,F));
var M=new qx.ui.form.RadioButton();
L.add(M,{row:O,column:ba});
var W=new qx.ui.form.RadioButton();
L.add(W,{row:O++,column:K});
var bf=new qx.ui.form.RadioGroup(M,W);
this.guiElements[i]={outputNumber:U,portCheckBox:bc,flashModeCheckBox:N,periodSpinner:R,repetitionsSpinner:X,onRadio:M,offRadio:W};
M.addListener(j,T(N),this);
bc.addListener(j,be(this.guiElements[i]),this);
N.addListener(j,S(R,X),this);
N.fireDataEvent(j,false);
N.setEnabled(false);
M.setEnabled(false);
W.setEnabled(false);
}return L;
},getEventSinksTOFromGui:function(){var bv=[];

if(!this.created)return bv;

if(this.currentDeviceInfo==null||this.currentDeviceInfo.getCountOutputControls()==0){return bv;
}
for(var i=0,l=this.guiElements.length;i<l;i++){var by=new track.rulesmodel.EventSinkTO(this.trackGui,null);
var bq=this.guiElements[i];

if(!bq.portCheckBox.getValue())continue;
var bu=bq.onRadio.getValue();
var bt=bq.periodSpinner.getValue();
var bz=bq.repetitionsSpinner.getValue();
var bs=new net.watchee.PropertyCollection();
var bx=bu?net.watchee.RuleTypeEnum.OUTPUT_CTRL.toSetActionString():net.watchee.RuleTypeEnum.OUTPUT_CTRL.toRemoveActionString();
var bw=new net.watchee.PropertyPair(net.watchee.PC_ACTION,bx);
bw.setDurable(true);
bs.add(bw);
var bn=new net.watchee.PropertyPair(b,bq.outputNumber);
bn.setDurable(true);
bs.add(bn);
bn=new net.watchee.PropertyPair(d,bu);
bn.setDurable(true);
bs.add(bn);

if(bu){var bp=new net.watchee.PropertyPair(a,bt);
bp.setDurable(true);
bs.add(bp);

if(bz!==undefined){var bo=new net.watchee.PropertyPair(f,bz);
bo.setDurable(true);
bs.add(bo);
}}var br=bs.toXml();
by.setExpression(br);
by.setEventSinkTypeEnum(net.watchee.EventSinkTypeEnum.DEVICECOMMAND_SETSETTING);
bv.push(by);
}return bv;
},onChangeSelectedRuleTypeEnum:function(bA){if(!this.created)return;
},onChangeSelectedRuleName:function(bB){if(!this.created)return;

if(bB==null){return;
}var bK=false;
var bD=bB.getDeviceInfoArr();

for(var i=0,l=bD.length;i<l;i++){var bH=bD[i];

if(bH.getCountOutputControls()>0){bK=true;
break;
}}
if(!bK){this.stack.setSelection([this.boxNoSupport]);
return;
}this.stack.setSelection([this.boxSupport]);

for(var i=0;i<this.outputCount;i++){this.guiElements[i].portCheckBox.setValue(false);
}var bG=bB.getEventSinkTOs(net.watchee.EventSinkTypeEnum.DEVICECOMMAND_SETSETTING);

if(bG.length>0){for(var i=0,l=bG.length;i<l;i++){var bJ=net.watchee.PropertyCollection.parseXml(bG[i].getExpression());
var bC=bJ.getNumber(b,0)-1;
var bI=bJ.getBoolean(d,true);
var bL=bJ.getNumber(a,0);
var bE=bJ.getNumber(f,0);

if(bC>=0&&bC<this.outputCount){var bF=this.guiElements[bC];
bF.portCheckBox.setValue(true);
bF.onRadio.setValue(bI);
if(bL==0&&bE==0){bF.flashModeCheckBox.setValue(false);
}else{bF.flashModeCheckBox.setValue(true);
bF.periodSpinner.setValue(bL);
bF.repetitionsSpinner.setValue(bE);
}}}}},onChangeSelectedDevices:function(bM){if(bM.length==0){this.updateOutputActionSupport(null);
}
for(var i=0,l=bM.length;i<l;i++){var bO=bM[i];
var bN=bO.getDeviceInfo();

if(bN!=null&&bN.getCountOutputControls()>0)this.currentDeviceInfo=bN;
else this.currentDeviceInfo=null;
this.updateOutputActionSupport(bN,bO.getDevice());
break;
}},updateOutputActionSupport:function(bP,bQ){if(bP==null||bP.getCountOutputControls()>0){this.stack.setSelection([this.boxSupport]);
var bT=bQ.getPropertyCollection();

if(bT!=null&&bT.contains(h)){var bR=org.xmlBlaster.util.Hashtable.parseCSV(bT.getStr(h,u));

for(var i=0;i<this.outputCount;i++){var bV=net.watchee.GPSData.KEY_OUT_PREFIX+(i+1);
var bU=bR.get(bV+s);
var bS=bR.get(bV+x);
this.guiElements[i].portCheckBox.setToolTipText(bU+B+bS);
this.guiElements[i].onRadio.setToolTipText(bU);
this.guiElements[i].offRadio.setToolTipText(bS);
}}}else{this.stack.setSelection([this.boxNoSupport]);
}}}});
})();
(function(){var g="track.rulesmodel.RulesTO",f="Rule",e="",d="RuleAccountRelation",c="EventSink",b="Geofence",a="Filter";
qx.Class.define(g,{extend:qx.core.Object,construct:function(h,j){qx.core.Object.call(this);
this.trackGui=h;

if(org.xmlBlaster.util.isDefined(j)){this.propertyCollections=j;
this.ruleTOArray=this.__pH(this.propertyCollections);
}else{this.propertyCollections=new net.watchee.PropertyCollections();
this.ruleTOArray=[];
}},members:{__pH:function(k){var o=[];
var p=null;
var m=k.getPropertyCollections();

for(var i=0,l=m.length;i<l;i++){var n=m[i];

if(f==n.getClazz()){p=new track.rulesmodel.RuleTO(this.trackGui,n);
o.push(p);
}else if(b==n.getClazz()){p.setGeofenceTO(new track.rulesmodel.GeofenceTO(this.trackGui,n));
}else if(a==n.getClazz()){p.addFilterPC(n);
}else if(c==n.getClazz()){p.addEventSinkPC(n);
}else if(d==n.getClazz()){p.addRuleAccountRelationPC(n);
}}return o;
},lookupRuleTOByRuleName:function(q){var q=q||null;

if(q==null||q==e)return null;

for(var i=0,l=this.ruleTOArray.length;i<l;i++){var r=this.ruleTOArray[i];

if(q==r.getRuleName())return r;
}return null;
},lookupRuleTOByRuleTypeEnum:function(s){var s=s||null;

if(s==null)return null;

for(var i=0,l=this.ruleTOArray.length;i<l;i++){var t=this.ruleTOArray[i];

if(t.getRuleTypeEnum().isSame(s))return t;
}return null;
},getRules:function(){return this.ruleTOArray;
}},destruct:function(){this._disposeFields();
this._disposeObjects();
}});
})();
(function(){var k="",j="info",i="geoType",h="name",g="SQUARE",f="coordinates",e="track.rulesmodel.GeofenceTO",d="creationTs",c="loginName",b="modifiedTs",a="Geofence";
qx.Class.define(e,{extend:qx.core.Object,construct:function(l,m){qx.core.Object.call(this);
this.trackGui=l;

if(org.xmlBlaster.util.isDefined(m)){this.propertyCollection=m;
this.coordinates=net.watchee.Coordinates.parseKmlStr(this.propertyCollection.getStr(f,k));
}else{this.propertyCollection=new net.watchee.PropertyCollection(a);
this.coordinates=new net.watchee.Coordinates();
}},members:{getName:function(){return this.propertyCollection.getStr(h,k);
},setName:function(name){this.propertyCollection.addKeyValue(h,name);
},getGeoType:function(){return this.propertyCollection.getStr(i,g);
},setGeoType:function(n){this.propertyCollection.addKeyValue(i,n);
},isGeoTypeSquare:function(){return g==this.getGeoType();
},getCoordinates:function(){return this.coordinates;
},getKmlStr:function(){return this.coordinates.toKmlStr();
},setCoordinatesKmlStr:function(o){delete this.coordinates;
this.coordinates=net.watchee.Coordinates.parseKmlStr(o);
},appendCoordinate:function(p){this.coordinates.append(p);
},getInfo:function(){return this.propertyCollection.getStr(j,k);
},setInfo:function(q){this.propertyCollection.addKeyValue(j,q);
},getPropertyCollection:function(){this.propertyCollection.addKeyValue(f,this.coordinates.toKmlStr());
return this.propertyCollection;
},getCreationTs:function(){return this.propertyCollection.getStr(d,k);
},getModifiedTs:function(){return this.propertyCollection.getStr(b,k);
},getLoginName:function(){return this.propertyCollection.getStr(c,k);
}},destruct:function(){this._disposeFields();
this._disposeObjects();
}});
})();
(function(){var b="Geofence",a="track.rulesmodel.GeofencesTO";
qx.Class.define(a,{extend:qx.core.Object,construct:function(c,d){qx.core.Object.call(this);
this.trackGui=c;

if(org.xmlBlaster.util.isDefined(d)){this.propertyCollections=d;
}else{this.propertyCollections=new net.watchee.PropertyCollections();
}},members:{getGeofences:function(){var e=this.propertyCollections.getClazzes(b);
var g=[];

for(var i=0,l=e.length;i<l;i++){var f=e[i];
g.push(new track.rulesmodel.GeofenceTO(this.trackGui,f));
}return g;
}},destruct:function(){this._disposeFields();
this._disposeObjects();
}});
})();
(function(){var n="16/statistic.png",m="Statistic Report",l="click",k="MissingStatisticCaption",j="track.statistic.StatisticWindow",i="MissingIcon",h="useReverseGeocodeInStatistik",g="supportsTableSelections",f="window title",d="close",b="100%";
var a=40;
var c=20;
qx.Class.define(j,{extend:track.util.WindowWithHelpIcon,construct:function(o){track.util.WindowWithHelpIcon.call(this,k,i,o);
this.trackGui=o;
this.setUseMoveFrame(true);
this.setResizable(true);
this.setLayout(new qx.ui.layout.Canvas());
this.setCaption(this.trc(f,m));
this.setIcon(xbGetIcon(n));
this.setMinWidth(914);
this.addListener(d,function(e){this.clear();
},this);
},members:{getStatisticWindowTop:function(){if(a>200)a=100;
a+=25;
return a;
},getStatisticWindowLeft:function(){if(c>350)c=250;
c+=25;
return c;
},createStatisticWindow:function(){this.supportsTableSelections=xbProperties.getBoolean(g,false);
this.timeplotGroup=new track.statistic.TimeplotGroup(this.trackGui,this);
this.trackGui.getMyRoot().add(this,{left:this.getStatisticWindowLeft(),top:this.getStatisticWindowTop()});
this.add(this.timeplotGroup.createGroup(),{left:0,top:0,height:b});
this.open();
this.filterToggle=new qx.ui.basic.Atom(null,this.trackGui.iconUp);
this.filterToggle.addListener(l,function(e){if(this.filterToggle.getIcon()==this.trackGui.iconUp){this.timeplotGroup.filterView.exclude();
this.filterToggle.setMarginTop(0);
this.filterToggle.setPaddingTop(0);
this.filterToggle.setIcon(this.trackGui.iconDown);
}else{this.timeplotGroup.filterView.show();
this.filterToggle.setMarginTop(50);
this.filterToggle.setIcon(this.trackGui.iconUp);
}},this);
this.add(this.filterToggle,{right:0});
this.filterToggle.setMarginTop(50);
},useReverseGeocodeInStatistik:function(){var p=xbProperties.getBoolean(h,true);
return p;
},onPostOpen:function(){if(this.timeplotGroup!=null){this.timeplotGroup.onPostOpen();
}},onChangedDevice:function(q){if(q==null)return;
var r=q.getDevice();
this.timeplotGroup.addHistoryTable(r);
},setWindowSize:function(s,t){this.setWidth(s);
this.setHeight(t);
},clear:function(){this.timeplotGroup.clear();
},destroyPopup:function(){this.trackGui.getMyRoot().remove(this);

try{this.clear();
}catch(u){this.error("StatisticWindow.js destroyPopup failed: "+u);
}this.close();
this.trackGui=null;
}},destruct:function(){this.destroyPopup();
}});
})();
(function(){var k="Label",j="red",h="errorMsgBox",g="",f="-",e="Get locations failed",d="Please choose a device.",c=":filter/startTimestamp",b="Get locations timeout, no data to show",a="info box",I="application/watchee.service.track.tracklist/enmea",H="statisticTimeplot.load",G="Received %1",F="No tracking data found in the given time range",E="AjaxAnimator",D="statisticTimeplot.loginName",C=":filter/limit",B="track.statistic.TimeplotGroup",A="statisticTimeplot.timestampStart",z="statisticTimeplot.yAxis",s="Get locations",t="getLocations",q="statisticWindow.table.visible",r="statisticTimeplot.timestampEnd",o="Loading ...",p="\n",m=":loginName",n="statisticWindow.maxValuesLoad",u="Get locations timeout",v="No tracking data found",x=":filter/endTimestamp",w="infoMsgBox",y="Get locations failed: %1 %2";
qx.Class.define(B,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(J,K){qx.core.Object.call(this);
this.trackGui=J;
this.statisticWindow=K;
this.groupBox=null;
this.filterView=null;
this.averageView=null;
this.timeplotView=null;
this.historyTableView=null;
this.historyTable=null;
this.loadedFromUrlParameter=false;
this.firstLoadDone=false;
this.timeplotDataCacheInfo={gpsDataArr:[],device:null,startDate:null,endDate:null};
},members:{createGroup:function(L){this.groupBox=new qx.ui.groupbox.GroupBox(null,null);
this.groupBox.setLayout(new qx.ui.layout.VBox());
this.groupBox.setContentPadding(2);
this.groupBox.setMinWidth(908);
this.filterView=new track.statistic.FilterView(this.trackGui,this.statisticWindow,this);
this.filter=this.filterView.createFilter();
this.groupBox.add(this.filter);
this.timeplotView=new track.statistic.TimeplotView(this.trackGui,this.statisticWindow,this);
var M=this.timeplotView.createDivParent();
M.exclude();
this.groupBox.add(M);
this.averageView=new track.statistic.AverageView(this.trackGui,this.statisticWindow,this);
this.averageView.exclude();
this.groupBox.add(this.averageView);
this.historyTableView=new track.statistic.HistoryTableView(this.trackGui,this.statisticWindow,this);
this.addHistoryTable();
return this.groupBox;
},addHistoryTable:function(){var O=this.historyTable;

if(O!=null){var N=this.groupBox.remove(O);
this.info("Removed old table "+N);
}this.historyTable=this.historyTableView.createTable();
var P=xbProperties.getBoolean(q,true);

if(!P)this.historyTable.exclude();
this.groupBox.add(this.historyTable,{flex:1});
},onPostOpen:function(){this.filterView.refreshButton.setEnabled(true);
var T=this.setFromUrlParameter(true);
var R=!T&&!this.firstLoadDone;

if(R){this.timeplotView.createTimeplot(R);
}else{this.timeplotView.clear();
qx.event.Timer.once(this.timeplotView.createTimeplot,this.timeplotView,100);
var Q=this.filterView.getStartDate();
var S=this.filterView.getEndDate();
this.historyTableView.loadDataFromCacheAsync(this.timeplotDataCacheInfo,Q,S);
this.averageView.loadDataFromCache(this.timeplotDataCacheInfo,Q,S);
}},onTimeplotIsInitialized:function(){var U=this.setFromUrlParameter(true);

if(xbProperties.getBoolean(H,U)){qx.event.Timer.once(this.loadStatistic,this,2000);
}},setFromUrlParameter:function(V){if(this.firstLoadDone)return false;
var V=(V==undefined)?true:V;
var X=xbProperties.getStr(D,null);

if(X!=null){this.loadedFromUrlParameter=true;
}var W=xbProperties.getDate(A,null);

if(W!=null){this.loadedFromUrlParameter=true;
}var ba=xbProperties.getDate(r,null);

if(ba!=null){this.loadedFromUrlParameter=true;
}var Y=xbProperties.getStr(z,null);

if(Y!=null){this.loadedFromUrlParameter=true;
}this.firstLoadDone=true;
if(this.loadedFromUrlParameter&&V){this.setQueryData(X,W,ba,Y);
}return this.loadedFromUrlParameter;
},loadStatistic:function(){var bc=this.filterView.getSelectedLoginName();

if(bc==null||bc==g){this.trackGui.errorMsgBox(this.trc(a,d));
return;
}var bb=this.filterView.getStartDate();
var bd=this.filterView.getEndDate();

if(this.hasDataCached(bc,bb,bd)){this.loadDataFromCache(bb,bd);
}else{this.sendGetLocations(bc,bb,bd);
}},sendGetLocations:function(be,bf,bg){this.watchee=this.trackGui.watchee;

if(this.watchee==null)throw new Error("sendGetLocations with watchee is null");
var bj=org.xmlBlaster.util.getCurrentIsoGmtTimestampStr(bf,false,true);
var bo=org.xmlBlaster.util.getCurrentIsoGmtTimestampStr(bg,false,true);
this.setCacheStartEnd(this.filterView.getSelectedDevice(),bf,bg);
var bm=org.xmlBlaster.util.PropTO;
var bk=this.trackGui.getRequestResponseDispatcher();
var bp=bm.VALUE_TASK_NAMED_GETLOCATIONS+f+bk.getRequestIdNextVal();
var bi=new Array();
bi.push(new bm(bm.KEY_SERVICENAME,bm.VALUE_SERVICE_TRACK));
bi.push(new bm(bm.KEY_TASK,bm.VALUE_TASK_NAMED_GETLOCATIONS));
bi.push(new bm(bm.KEY_DATA+m,be));
bi.push(new bm(bm.KEY_DATA+c,bj));
bi.push(new bm(bm.KEY_DATA+x,bo));
var bl=xbProperties.getInt(n,5000);
bi.push(new bm(bm.KEY_DATA+C,bl));
bi.push(new bm(bm.KEY_RESULTMIME,I));
bi.push(new bm(bm.KEY_BOUNCE,bp));
var bh=new org.xmlBlaster.util.ServiceTO(bi);
var bn=new org.xmlBlaster.util.ServiceListTO(bh);
this.trackGui.startAjaxAnimator(this.trc(E,s),4000);
bk.registerRequest(bp,120,this.onGetLocations,this,g);
this.watchee.publishServiceMessage(bn,this.trackGui.returnQosOrException,this.trackGui,t);
this.filterView.refreshButton.setEnabled(false);
this.filterView.setStatusLabelValue(this.trc(k,o));
},onGetLocations:function(bq,br,bs){this.trackGui.stopAjaxAnimator();

if(bq==null){this.filterView.setStatusLabelValue(this.trc(k,u),j);
this.trackGui.errorMsgBox(this.trc(h,b));
this.onEnmeaArray([]);
this.filterView.refreshButton.setEnabled(true);
return;
}if(bq.isException()){this.filterView.setStatusLabelValue(this.trc(k,e),j);
this.trackGui.errorMsgBox(this.trc(h,y,bq.getBounce(),bq.getErrorMessage()));
this.onEnmeaArray([]);
this.filterView.refreshButton.setEnabled(true);
return;
}var bt=bq.getPropValue(org.xmlBlaster.util.PropTO.KEY_RESULT);

if(bt==null||bt.length==0){this.filterView.setStatusLabelValue(this.trc(k,v),j);
this.trackGui.infoMsgBox(this.trc(w,F));
this.onEnmeaArray([]);
this.filterView.refreshButton.setEnabled(true);
return;
}var bu=bt.split(p);
this.filterView.setStatusLabelValue(this.trc(k,G,bu.length));
this.onEnmeaArray(bu);
this.filterView.refreshButton.setEnabled(true);
},setCacheStartEnd:function(bv,bw,bx){this.timeplotDataCacheInfo.device=bv;
this.timeplotDataCacheInfo.startDate=bw;
this.timeplotDataCacheInfo.endDate=bx;
},hasDataCached:function(by,bz,bA){if(this.timeplotDataCacheInfo==null||this.timeplotDataCacheInfo.startDate==null||this.timeplotDataCacheInfo.endDate==null||bz==null||bA==null)return false;

if(this.timeplotDataCacheInfo.device.getDeviceId()==by&&this.timeplotDataCacheInfo.startDate.getTime()<=bz.getTime()&&this.timeplotDataCacheInfo.endDate.getTime()>=bA.getTime())return true;
return false;
},onEnmeaArray:function(bB){this.timeplotDataCacheInfo.gpsDataArr=[];

for(var i=0,l=bB.length;i<l;i++){var bC=bB[i];
var bD=new net.watchee.GPSData(bC,this.timeplotDataCacheInfo.device);
this.timeplotDataCacheInfo.gpsDataArr.push(bD);
}this.loadDataFromCache(null,null);
},loadDataFromCache:function(bE,bF){this.timeplotView.loadDataFromCache(this.timeplotDataCacheInfo,bE,bF);
this.historyTableView.loadDataFromCacheAsync(this.timeplotDataCacheInfo,bE,bF);
this.averageView.loadDataFromCache(this.timeplotDataCacheInfo,bE,bF);
},clear:function(){if(this.filterView!=null){this.filterView.clear();
}
if(this.timeplotView!=null){this.timeplotView.clear();
}if(this.historyTableView!=null){this.historyTableView.clear();
}},setStatusLabelValue:function(bG){this.filterView.setStatusLabelValue(bG);
},getSelectedDevice:function(){return this.filterView.getSelectedDevice();
},getSelectedYAxis:function(){return this.filterView.getSelectedYAxis();
}},destruct:function(){this.destroyPopup();
}});
})();
(function(){var bx="listItem",bw="yAxis",bv="top",bu="",bt="checkbox",bs="left",br="exportFormat",bq="label",bp="changeValue",bo='">',bd="button",bc="_",bb="execute",ba="/",Y="BLABLA",X="changeSelection",W="kmh",V="export:kmlPlacemarks",U="csv",T="Address",bE="pdf",bF='<input type="hidden" name="_password" value="">',bC="22/speed.png",bD="h",bA="track.statistic.FilterView",bB="22/course.png",by="Start Date",bz="End Date",bG="buddyTO",bH="value",bh="loginName",bg="22/download.png",bj='<form id="downloadFormPOST" action="" method="post" accept-charset="UTF-8" target="_blank">',bi="Diagram",bl="filter/endTimestamp",bk="medium",bn="statisticWindow.table.visible",bm="Average",bf="exportAdditional",be='<input type="hidden" name="_loginName" value="">',a="22/actions/edit-find.png",b="PDF",c="id",d="Device",f="_blank",g='<input type="hidden" name="export:locale" value="',h="Speed km/h",j="info box",k="/io/rest/stat/",m="input",bL="type",bK=":",bJ="CSV",bI="Course in °",bP="KML",bO="Speed, Height and Course",bN="course",bM="filter/startTimestamp",bR="kml",bQ="hidden",D="txt",E="Please choose a device.",B="statisticWindow.average.visible",C="filter/limit",H="Speed and Height",I="net.watchee.report.DriverLogbookReport",F="22/speed2.png",G="Y-Axis",z="right",A='</form>',u="history.maxValuesLoad",t="all",w=".",v='<input type="hidden" name="export:localeQoox" value="',q="name",p='<input type="hidden" name="export:timezoneOffsetMinutes" value="',s="true",r="green",o="22/height2.png",n="statisticWindow.diagram.visible",N="22/course2.png",O="downloadFormPOST",P="Height in m",Q="Export",J="TXT",K="statisticWindow.address.visible",L="combo",M="Table",R="Load",S="false",y="Resize",x="?_loginName=k320i&_password=secret";
qx.Class.define(bA,{extend:qx.ui.container.Composite,implement:[track.poiprint.IPrintWindowModel],construct:function(bS,bT,bU){qx.ui.container.Composite.call(this);
this.trackGui=bS;
this.statisticWindow=bT;
this.timeplotGroup=bU;
this.programmaticSetSelected=false;
this.layout=new qx.ui.layout.Grid(3,0);
this.setLayout(this.layout);
this.set({width:900,height:80});
},members:{getTitle:function(){var bV=this.getSelectedBuddyTO();

if(bV==null){return bu;
}var bW=bV.getAliasAndLoginName();
return bW;
},isPoiReport:function(){return false;
},fillFilterData:function(bX){var ca=this.devicesSelectBox.getSelectedLoginName();
var bY=this.getStartTimestampUtcT();
var cb=this.getEndTimestampUtcT();
bX.addKeyValue(bh,ca);
bX.addKeyValue(bM,bY);
bX.addKeyValue(bl,cb);
bX.addKeyValue(C,xbProperties.getInt(u,5000));
return (this.timeplotGroup.historyTableView!=null&&this.timeplotGroup.historyTableView.getRowCount()>0);
},createFilter:function(){var cg=false;
var cc=0;
var cd=1;
var cH=0;
var cI=1;
var cF=2;
var cG=3;
var cD=4;
var cE=5;
var cB=6;
var cC=7;
var cz=8;
var cA=9;
this.layout.setColumnAlign(cH,bs,bv);
this.layout.setColumnAlign(cI,bs,bv);
this.layout.setColumnAlign(cF,bs,bv);
this.layout.setColumnAlign(cG,bs,bv);
this.layout.setColumnWidth(cH,180);
this.layout.setColumnWidth(cG,180);
this.layout.setColumnAlign(cE,bs,bv);
this.layout.setColumnWidth(cB,60);
this.layout.setColumnWidth(cz,20);
this.add(new qx.ui.basic.Label(this.trc(bq,d)),{row:cc,column:cH});
var ck=true;
this.devicesSelectBox=new track.util.BuddySelectBox(this.trackGui,this,ck);
this.add(this.devicesSelectBox,{row:cd,column:cH});
this.devicesSelectBox.addDevicesListener(net.watchee.BuddyPermissionTO.PERMISSION_GPS_HISTORY);
this.devicesSelectBox.addListener(X,function(e){if(this.programmaticSetSelected)return ;
var cP=(e.getData().length==0)?null:e.getData()[0];

if(cP==null)return ;
var cO=cP.getUserData(bG);
this.statisticWindow.onChangedDevice(cO);
},this);
var cl=qx.locale.Date.getDateFormat(bk,qx.locale.Manager.getInstance().getLocale());
var cn=new qx.util.format.DateFormat(cl);
this.add(new qx.ui.basic.Label(this.trc(bq,by)),{row:cc,column:cI});
this.dateFieldStart=new track.util.DateTimePicker();
this.dateFieldStart.setDateFormat(cn);
var cs=new Date();
var cj=cs.getTime()-(24*60*60*1000);
cs.setTime(cj);
cs.setHours(0);
cs.setMinutes(0);
cs.setSeconds(0);

if(cg)cs=new Date(2007,9,19,8,43,0);
this.dateFieldStart.setValue(cs);
this.add(this.dateFieldStart,{row:cd,column:cI});
this.add(new qx.ui.basic.Label(this.trc(bq,bz)),{row:cc,column:cF});
this.dateFieldEnd=new track.util.DateTimePicker();
this.dateFieldEnd.setDateFormat(cn);
var cq=new Date();
cq.setHours(23);
cq.setMinutes(59);
cq.setSeconds(59);

if(cg)cq=new Date(2007,9,19,8,44,0);
this.dateFieldEnd.setValue(cq);
this.add(this.dateFieldEnd,{row:cd,column:cF});
this.labelHBox=new qx.ui.container.Composite(new qx.ui.layout.HBox());
var cm=new qx.ui.basic.Label(this.trc(bq,G));
this.labelHBox.add(cm);
this.add(this.labelHBox,{row:cc,column:cG});
this.ySelectBox=new qx.ui.form.SelectBox();
this.add(this.ySelectBox,{row:cd,column:cG});
var cM=new qx.ui.form.ListItem(this.trc(bx,h),xbGetIcon(F));
cM.setUserData(bw,W);
this.__oF(this.ySelectBox,cM);
var ct=new qx.ui.form.ListItem(this.trc(bx,P),xbGetIcon(o));
ct.setUserData(bw,bD);
this.__oF(this.ySelectBox,ct);
var cx=new qx.ui.form.ListItem(this.trc(bx,bI),xbGetIcon(N));
cx.setUserData(bw,bN);
this.__oF(this.ySelectBox,cx);
var cK=new qx.ui.form.ListItem(this.trc(bx,H),xbGetIcon(bC));
cK.setUserData(bw,L);
this.__oF(this.ySelectBox,cK);
var cp=new qx.ui.form.ListItem(this.trc(bx,bO),xbGetIcon(bB));
cp.setUserData(bw,t);
this.__oF(this.ySelectBox,cp);
this.ySelectBox.addListener(X,function(e){if(this.programmaticSetSelected)return ;
var cQ=(e.getData().length==0)?null:e.getData()[0];

if(cQ==null)return ;

if(this.timeplotGroup.timeplotView!=null){this.timeplotGroup.timeplotView.changedWantedYAxis(cQ.getUserData(bw));
}},this);
this.refreshButton=new qx.ui.form.Button(this.trc(bd,R),xbGetQxIcon(a));
this.add(this.refreshButton,{row:cd,column:cD});
this.refreshButton.addListener(bb,function(e){this.timeplotGroup.loadStatistic();
},this);
var cJ=xbProperties.getBoolean(K,false);
this.showAddressCheckBox=new qx.ui.form.CheckBox(this.trc(bt,T));
this.showAddressCheckBox.setValue(cJ);
this.showAddressCheckBox.addListener(bp,function(e){var cR=e.getData();

if(this.timeplotGroup.historyTableView==null)return;
this.timeplotGroup.historyTableView.onShowGpsAddress(cR);
},this);

if(this.statisticWindow.useReverseGeocodeInStatistik()){this.add(this.showAddressCheckBox,{row:cc,column:cE});
}var cN=new qx.ui.container.Composite(new qx.ui.layout.VBox());
var ci=xbProperties.getBoolean(n,false);
this.showDiagramCheckBox=new qx.ui.form.CheckBox(this.trc(bt,bi));
this.showDiagramCheckBox.setValue(ci);
cN.add(this.showDiagramCheckBox);
this.showDiagramCheckBox.addListener(bp,function(e){var cS=e.getData();

if(this.timeplotGroup.timeplotView==null)return;
this.timeplotGroup.timeplotView.onCheckboxVisible(cS);
},this);
var co=xbProperties.getBoolean(B,false);
this.showAverageCheckBox=new qx.ui.form.CheckBox(this.trc(bt,bm));
this.showAverageCheckBox.setValue(co);
cN.add(this.showAverageCheckBox);
this.showAverageCheckBox.addListener(bp,function(e){var cT=e.getData();

if(this.timeplotGroup.averageView==null)return;
this.timeplotGroup.averageView.onCheckboxVisible(cT);
},this);
var cy=xbProperties.getBoolean(bn,true);
this.showTableCheckBox=new qx.ui.form.CheckBox(this.trc(bt,M));
this.showTableCheckBox.setValue(cy);
cN.add(this.showTableCheckBox);
this.showTableCheckBox.addListener(bp,function(e){var cU=e.getData();

if(this.timeplotGroup.historyTableView==null)return;
this.timeplotGroup.historyTableView.onCheckboxVisible(cU);
},this);
this.add(cN,{row:cd,column:cE});
this.exportFormatSelectBox=new qx.ui.form.SelectBox();
this.add(this.exportFormatSelectBox,{row:cd,column:cB});
var cr=new qx.ui.form.ListItem(this.trc(bx,bJ));
cr.setUserData(br,U);
this.__oF(this.exportFormatSelectBox,cr);
var cu=new qx.ui.form.ListItem(this.trc(bx,bP));
cu.setUserData(br,bR);
this.__oF(this.exportFormatSelectBox,cu);
var ch=new qx.ui.form.ListItem(this.trc(bx,b));
ch.setUserData(br,bE);
this.__oF(this.exportFormatSelectBox,ch);
var cL=new qx.ui.form.ListItem(this.trc(bx,J));
cL.setUserData(br,D);
this.__oF(this.exportFormatSelectBox,cL);
this.exportButton=new qx.ui.form.Button(this.trc(bd,Q),xbGetIcon(bg));
this.add(this.exportButton,{row:cd,column:cC});
var ce=44;
this.devicesSelectBox.setMaxHeight(ce);
this.ySelectBox.setMaxHeight(ce);
this.refreshButton.setMaxHeight(ce);
this.exportFormatSelectBox.setMaxHeight(ce);
this.exportButton.setMaxHeight(ce);
this.setMaxHeight(ce+20);
this.setAlignY(bv);
var cf=bj+be+bF+p+org.xmlBlaster.util.getTimezoneOffsetMinutes()+bo+g+org.xmlBlaster.util.getLocaleIdJava()+bo+v+qx.locale.Manager.getInstance().getLocale()+bo+A;
var cv=new qx.ui.embed.Html(cf);
this.add(cv,{row:cd,column:cz});
this.exportButton.addListener(bb,function(e){if(this.trackGui.watchee==null)return;
var cW=this.devicesSelectBox.getSelectedLoginName();

if(cW==null||cW==bu){this.trackGui.errorMsgBox(this.trc(j,E));
return;
}var db=this.getSelectedExportFormat();

if(db==bE){var cY=I;
this.trackGui.getWindowManager().popupReportPrintWindow(this,cY);
}else{var da=this.getSelectedExportAdditional();
var cV=this.getStartTimestampUtcT();
var cX=this.getEndTimestampUtcT();
this.makeExportRestCall(cW,db,da,cV,cX);
}},this);
var cw=false;

if(cw){this.ruleNameTextField=new qx.ui.form.TextField(bu);
this.add(this.ruleNameTextField,{row:cc,column:cA});
this.deleteButton=new qx.ui.form.Button(this.trc(bd,y));
this.add(this.deleteButton,{row:cd,column:cA});
this.deleteButton.addListener(bb,function(e){var dc=org.xmlBlaster.util.toNumber(this.ruleNameTextField.getValue(),200);
alert("Setting height="+dc);
this.statisticWindow.setMaxHeight(dc);
},this);
}this.statusLabel=new qx.ui.basic.Label(this.trc(bq,bu));
{this.statusLabel.setTextAlign(z);
this.labelHBox.add(new qx.ui.core.Spacer(40));
this.labelHBox.add(this.statusLabel);
};
return this;
},makeExportRestCall:function(dd,de,df,dg,dh){var dj=k+dd+ba+dg+ba+dh+ba;
var dm=dd+bc+dg+bc+dh+w+de;
dm=org.xmlBlaster.util.replaceAllTokens(dm,bK,bc);
var dk=dj+dm;
var di=false;

if(di){dk+=x;
window.open(dk,f);
}else{var dl=window.document.getElementById(O);
dl._loginName.value=this.trackGui.getMyLoginName();
dl._password.value=this.trackGui.getMyPassword();

if(df!=null)this.createNewFormElement(dl,V,S);
else this.createNewFormElement(dl,V,s);
dl.action=dk;
dl.submit();
}},createNewFormElement:function(dn,dp,dq){var dr=null;

for(var i=0;i<dn.elements.length;i++){if(dn.elements[i].id==Y){dr=dn.elements[i];
break;
}}
if(dr==null){var dr=document.createElement(m);
dr.setAttribute(bL,bQ);
dr.setAttribute(c,Y);
dr.setAttribute(q,dp);
dr.setAttribute(bH,dq);
dn.appendChild(dr);
}else{dr.value=dq;
}return dr;
},setShowDiagramCheckBoxEnabled:function(ds){this.showDiagramCheckBox.setEnabled(ds);
},setStatusLabelValue:function(dt,du){var du=du||r;
this.statusLabel.setTextColor(du);
this.statusLabel.setValue(dt);
},setAddressLabel:function(dv,dw){var dw=dw||null;
var dv=dv||this.trc(bt,T);

if(dw==null){this.showAddressCheckBox.resetTextColor();
this.showAddressCheckBox.resetBackgroundColor();
}else{this.showAddressCheckBox.setTextColor(dw);
}this.showAddressCheckBox.setLabel(dv);
},setQueryData:function(dx,dy,dz,dA){if(this.devicesSelectBox==null)return;
var dx=dx||null;
var dy=dy||null;
var dz=dz||null;
var dA=dA||null;

if(dx!=null){this.devicesSelectBox.selectLoginName(dx);
}
if(dy!=null){this.dateFieldStart.setValue(dy);
}
if(dz!=null){this.dateFieldEnd.setValue(dz);
}
if(dA!=null){var dB=this.selectYAxis(dA);
}return;
},getStartDate:function(){return this.dateFieldStart.getValue();
},getStartTimestampUtcT:function(){var dC=this.getStartDate();

if(dC==null)return bu;
return org.xmlBlaster.util.getCurrentIsoGmtTimestampStr(dC,false);
},getEndDate:function(){var dD=this.dateFieldEnd.getValue();
return dD;
},getEndTimestampUtcT:function(){var dE=this.getEndDate();

if(dE==null)return bu;
return org.xmlBlaster.util.getCurrentIsoGmtTimestampStr(dE,false);
},__oF:function(dF,dG){this.programmaticSetSelected=true;
dF.add(dG);
this.programmaticSetSelected=false;
},selectYAxis:function(dH){var dI=this.__pI(dH);

if(dI!=null)this.ySelectBox.setSelection([dI]);
return dI;
},__pI:function(dJ){var dJ=dJ||null;

if(dJ==null)return null;
var dL=this.ySelectBox.getChildren();

for(var i=0,l=dL.length;i<l;i++){var dM=dL[i];
var dK=dM.getUserData(bw);

if(dK==dJ)return dM;
}return null;
},getSelectedYAxis:function(){var dN=this.ySelectBox.getSelection()[0];

if(dN==null)return W;
return dN.getUserData(bw);
},getSelectedExportFormat:function(){var dO=this.exportFormatSelectBox.getSelection()[0];

if(dO==null)return U;
return dO.getUserData(br);
},getSelectedExportAdditional:function(){var dP=this.exportFormatSelectBox.getSelection()[0];

if(dP==null)return null;
return dP.getUserData(bf);
},getSelectedDevice:function(){var dQ=this.devicesSelectBox.getSelectedBuddyTO();

if(dQ==null)return null;
return dQ.getDevice();
},getSelectedBuddyTO:function(){return this.devicesSelectBox.getSelectedBuddyTO();
},getSelectedLoginName:function(){return this.devicesSelectBox.getSelectedLoginName();
},clear:function(){}},destruct:function(){this.destroyPopup();
}});
})();
(function(){var g="buddyTO",f="updateFriendOfListenerFunc",e="onlineStatusListenerFunc",d="updateFriendOf",c="changed",b="track.util.BuddySelectBox",a="";
qx.Class.define(b,{extend:qx.ui.form.SelectBox,construct:function(h,j,k){qx.ui.form.SelectBox.call(this);
this.trackGui=h;
this.parentWindow=j;
this.programmaticSetSelected=false;
this.buddyChangedEventFunc=null;
this.onlyBuddiesWithHardware=(k==undefined)?false:k;
},members:{addDevicesListener:function(m){this.buddyChangedEventFunc=this.trackGui.watchee.getBuddyManager().getEventManager().addListener(c,function(n){this.__pJ();
},this);
this.__pJ();
},__pJ:function(){if(this.trackGui.watchee==null)return;

if(!this.trackGui.watchee.getBuddyManager().buddiesInboundIsSet)return;
var o=o||net.watchee.BuddyPermissionTO.PERMISSION_GPS_HISTORY;
var q=this.trackGui.watchee.getBuddyManager().getFriendOfList(o);
this.removeAll();
var t=this.trackGui.watchee.getAccountTO().getBuddyTO();
var s=this.__pK(t);

if(s!=null){this.add(s);
this.setSelection([s]);
}
for(var i=0,l=q.length;i<l;i++){var p=q[i];
var r=this.__pK(p);

if(r!=null){this.add(r);
}}},__pK:function(u){if(this.onlyBuddiesWithHardware){if(!u.getDeviceInfo().hasTrackerConfigured()){return null;
}}var x=new qx.ui.form.ListItem(u.getAliasAndLoginName(),u.getAvatarIconUrl(),u.getLoginName());
var v=this.trackGui.watchee.getBuddyManager().getEventManager().addListener(org.xmlBlaster.util.PropTO.VALUE_TASK_NAMED_ONLINESTATUS,function(y){if(y.getData().loginName==x.getModel())x.setIcon(y.getData().buddyTO.getAvatarIconUrl());
},this);
x.setUserData(e,v);
var w=this.trackGui.watchee.getBuddyManager().getEventManager().addListener(d,function(z){if(z.getData().buddyTO.getLoginName()==x.getModel())x.setIcon(z.getData().buddyTO.getAvatarIconUrl());
},this);
x.setUserData(f,w);
x.setUserData(g,u);
return x;
},getSelectedBuddyTO:function(){var A=this.getSelection()[0];

if(A==null)return null;
return A.getUserData(g);
},getSelectedLoginName:function(){var B=this.getSelection()[0];

if(B==null)return a;
return B.getModel();
},__pL:function(C){var C=C||null;

if(C==null)return null;
var E=this.getChildren();

for(var i=0,l=E.length;i<l;i++){var F=E[i];
var D=F.getModel();

if(D==C)return F;
}return null;
},selectLoginName:function(G){var H=this.__pL(G);

if(H!=null)this.setSelection([H]);
},__oF:function(I,J){this.programmaticSetSelected=true;
I.add(J);
this.programmaticSetSelected=false;
},clear:function(){if(this.buddyChangedEventFunc!=null){this.trackGui.watchee.getBuddyManager().getEventManager().removeListener(c,this.buddyChangedEventFunc);
this.buddyChangedEventFunc=null;
}var K=this.getChildren();

for(var i=0,l=K.length;i<l;i++){var L=K[i];

if(L!=null){this.trackGui.watchee.getBuddyManager().getEventManager().removeListener(org.xmlBlaster.util.PropTO.VALUE_TASK_NAMED_ONLINESTATUS,L.getUserData(e));
this.trackGui.watchee.getBuddyManager().getEventManager().removeListener(d,L.getUserData(f));
return L;
}}this.removeAll();
}},destruct:function(){}});
})();
(function(){var k="_",j="format",h="thu",g="sat",f="cldr_day_",e="cldr_month_",d="wed",c="fri",b="tue",a="mon",B="sun",A="short",z="HH:mm",y="HHmmsszz",x="HHmm",w="HHmmss",v="cldr_date_format_",u="HH:mm:ss zz",t="full",s="cldr_pm",q="long",r="medium",o="cldr_am",p="qx.locale.Date",m="cldr_date_time_format_",n="cldr_time_format_",l="HH:mm:ss";
qx.Class.define(p,{statics:{__pM:qx.locale.Manager.getInstance(),getAmMarker:function(C){return this.__pM.localize(o,[],C);
},getPmMarker:function(D){return this.__pM.localize(s,[],D);
},getDayNames:function(length,E,F){var F=F?F:j;
var H=[B,a,b,d,h,c,g];
var I=[];

for(var i=0;i<H.length;i++){var G=f+F+k+length+k+H[i];
I.push(this.__pM.localize(G,[],E));
}return I;
},getDayName:function(length,J,K,L){var L=L?L:j;
var N=[B,a,b,d,h,c,g];
var M=f+L+k+length+k+N[J];
return this.__pM.localize(M,[],K);
},getMonthNames:function(length,O,P){var P=P?P:j;
var R=[];

for(var i=0;i<12;i++){var Q=e+P+k+length+k+(i+1);
R.push(this.__pM.localize(Q,[],O));
}return R;
},getMonthName:function(length,S,T,U){var U=U?U:j;
var V=e+U+k+length+k+(S+1);
return this.__pM.localize(V,[],T);
},getDateFormat:function(W,X){var Y=v+W;
return this.__pM.localize(Y,[],X);
},getDateTimeFormat:function(ba,bb,bc){var be=m+ba;
var bd=this.__pM.localize(be,[],bc);

if(bd==be){bd=bb;
}return bd;
},getTimeFormat:function(bf,bg){var bi=n+bf;
var bh=this.__pM.localize(bi,[],bg);

if(bh!=bi){return bh;
}
switch(bf){case A:case r:return qx.locale.Date.getDateTimeFormat(x,z);
case q:return qx.locale.Date.getDateTimeFormat(w,l);
case t:return qx.locale.Date.getDateTimeFormat(y,u);
default:throw new Error("This case should never happen.");
}},getWeekStart:function(bj){var bk={"MV":5,"AE":6,"AF":6,"BH":6,"DJ":6,"DZ":6,"EG":6,"ER":6,"ET":6,"IQ":6,"IR":6,"JO":6,"KE":6,"KW":6,"LB":6,"LY":6,"MA":6,"OM":6,"QA":6,"SA":6,"SD":6,"SO":6,"TN":6,"YE":6,"AS":0,"AU":0,"AZ":0,"BW":0,"CA":0,"CN":0,"FO":0,"GE":0,"GL":0,"GU":0,"HK":0,"IE":0,"IL":0,"IS":0,"JM":0,"JP":0,"KG":0,"KR":0,"LA":0,"MH":0,"MN":0,"MO":0,"MP":0,"MT":0,"NZ":0,"PH":0,"PK":0,"SG":0,"TH":0,"TT":0,"TW":0,"UM":0,"US":0,"UZ":0,"VI":0,"ZA":0,"ZW":0,"MW":0,"NG":0,"TJ":0};
var bl=qx.locale.Date._getTerritory(bj);
return bk[bl]!=null?bk[bl]:1;
},getWeekendStart:function(bm){var bo={"EG":5,"IL":5,"SY":5,"IN":0,"AE":4,"BH":4,"DZ":4,"IQ":4,"JO":4,"KW":4,"LB":4,"LY":4,"MA":4,"OM":4,"QA":4,"SA":4,"SD":4,"TN":4,"YE":4};
var bn=qx.locale.Date._getTerritory(bm);
return bo[bn]!=null?bo[bn]:6;
},getWeekendEnd:function(bp){var bq={"AE":5,"BH":5,"DZ":5,"IQ":5,"JO":5,"KW":5,"LB":5,"LY":5,"MA":5,"OM":5,"QA":5,"SA":5,"SD":5,"TN":5,"YE":5,"AF":5,"IR":5,"EG":6,"IL":6,"SY":6};
var br=qx.locale.Date._getTerritory(bp);
return bq[br]!=null?bq[br]:0;
},isWeekend:function(bs,bt){var bv=qx.locale.Date.getWeekendStart(bt);
var bu=qx.locale.Date.getWeekendEnd(bt);

if(bu>bv){return ((bs>=bv)&&(bs<=bu));
}else{return ((bs>=bv)||(bs<=bu));
}},_getTerritory:function(bw){if(bw){var bx=bw.split(k)[1]||bw;
}else{bx=this.__pM.getTerritory()||this.__pM.getLanguage();
}return bx.toUpperCase();
}}});
})();
(function(){var cF=")",cE="(",cD="|",cC="(\\d\\d?)",cB="format",cA="",cz="-",cy="abbreviated",cx="wide",cw="stand-alone",bG="narrow",bF="(\\d\\d*?)",bE="quarter",bD='A',bC="default",bB="0",bA="literal",bz="wildcard",by="'",bx="(\\d?)",cM="hour",cN='Anno Domini',cK="+",cL='Q',cI="ms",cJ="(\\d\\d?\\d?)",cG="dayOfYear",cH='AD',cO="Y+",cP=":",cf='y',ce="quoted_literal",ch="weekOfYear",cg='a',cj="day",ci="(-*",cl="locale",ck="GMT",cd="HH:mm:ss",cc='y+',n="HHmmss",o="long",p='Y',q='z',r='BC',s="d",t="D",u='B',v='',w='Before Christ',de='Z',dd=" ",dc="min",db="sec",di="\\d",dh="+?",dg="eeeee",df='W',dk="qqqq",dj="h",W="KK",X='L',U="Z",V="GGGGG",bb="LL",bc="EEEE",Y="^",ba='4th quarter',S="SSS",T="qqq",F="K",E='q',H='G',G="a",B='2nd quarter',A="dd",D="qx.util.format.DateFormat",C="eee",z="ee",y="q",bh="QQQQ",bi="ww",bj="H",bk='Y+',bd="(\\d\\d\\d?)",be="(GMT[\\+\\-]\\d\\d:\\d\\d)",bf="_applyLocale",bg="Q",bl="c",bm="weekOfMonth",P="ccc",O="EEEEE",N="EE",M="GGG",L='-',K="w",J="mm",I='h',R="S",Q='s',bn="QQQ",bo="G",bp="GG",bq="kk",br="ss",bs="([\\+\\-]\\d\\d\\d\\d)",bt='H',bu='S',bv='1st quarter',bw="MMMM",bK='c',bJ='Q1',bI='3rd quarter',bH="eeee",bO="QQ",bN="LLLLL",bM="HH",bL='k',bQ="m",bP="DDD",bX='D',bY="LLLL",bV='e',bW='K',bT="L",bU="hh",bR="cccc",bS="e",ca="W",cb="GGGG",cp='Q2',co="MM",cr="y+",cq="ccccc",ct="E",cs="yyyy-MM-dd HH:mm:ss",cv="short",cu='d',cn="unkown",cm="\\d?",cW="k",cX='m',cY="String",da='Q3',cS="DD",cT='M',cU='isoUtcDateTime',cV="SS",cQ="MMM",cR="s",m="M",l='w',h="EEE",g="$",f="?",e='Q4',d="MMMMM",c='E',b="z",a="LLL",x="qq";
qx.Class.define(D,{extend:qx.core.Object,implement:qx.util.format.IFormat,construct:function(dl,dm){qx.core.Object.call(this);

if(!dm){this.__ix=qx.locale.Manager.getInstance().getLocale();
this.__pN=qx.locale.Manager.getInstance().bind(cl,this,cl);
}else{this.__ix=dm;
this.setLocale(dm);
}this.__pO=this.__ix;

if(dl!=null){this.__oO=dl.toString();

if(this.__oO in qx.util.format.DateFormat.ISO_MASKS){if(this.__oO===cU){this.__pP=true;
}this.__oO=qx.util.format.DateFormat.ISO_MASKS[this.__oO];
}}else{this.__oO=qx.locale.Date.getDateFormat(o,this.__ix)+dd+qx.locale.Date.getDateTimeFormat(n,cd,this.__ix);
}},properties:{locale:{apply:bf,nullable:true,check:cY}},statics:{getDateTimeInstance:function(){var dp=qx.util.format.DateFormat;
var dn=qx.locale.Date.getDateFormat(o)+dd+qx.locale.Date.getDateTimeFormat(n,cd);

if(dp._dateInstance==null||dp._dateInstance.__oO!=dn){dp._dateTimeInstance=new dp();
}return dp._dateTimeInstance;
},getDateInstance:function(){var dr=qx.util.format.DateFormat;
var dq=qx.locale.Date.getDateFormat(cv)+cA;

if(dr._dateInstance==null||dr._dateInstance.__oO!=dq){dr._dateInstance=new dr(dq);
}return dr._dateInstance;
},ASSUME_YEAR_2000_THRESHOLD:30,LOGGING_DATE_TIME__format:cs,ISO_MASKS:{isoDate:"yyyy-MM-dd",isoTime:"HH:mm:ss",isoDateTime:"yyyy-MM-dd'T'HH:mm:ss",isoUtcDateTime:"yyyy-MM-dd'T'HH:mm:ss'Z'"},AM_MARKER:"am",PM_MARKER:"pm"},members:{__pN:null,__ix:null,__pO:null,__oO:null,__pQ:null,__pR:null,__pS:null,__pP:null,__pT:function(ds,dt){var du=cA+(ds<0?((-1)*ds):ds);

while(du.length<dt){du=bB+du;
}return ds<0?cz+du:du;
},__pU:function(dv){var dw=new Date(dv.getTime());
var dx=dw.getDate();

while(dw.getMonth()!=0){dw.setDate(-1);
dx+=dw.getDate()+1;
}return dx;
},__pV:function(dy){return new Date(dy.getTime()+(3-((dy.getDay()+6)%7))*86400000);
},__pW:function(dz){var dB=this.__pV(dz);
var dC=dB.getFullYear();
var dA=this.__pV(new Date(dC,0,4));
return Math.floor(1.5+(dB.getTime()-dA.getTime())/86400000/7);
},__pX:function(dD){var dF=this.__pV(dD);
var dE=this.__pV(new Date(dD.getFullYear(),dD.getMonth(),4));
return Math.floor(1.5+(dF.getTime()-dE.getTime())/86400000/7);
},__pY:function(dG){var dH=this.__pV(dG);
return dH.getFullYear();
},__qa:function(dI){var dJ=new Date(dI,2,1);
dJ.setDate(-1);
return dJ.getDate()+1===29;
},__qb:function(dK,dL){var dP=0;
var dQ=0;
if(!dL){dL=1971;
}var dM=0;

for(var i=1;i<=12;i++){var dO=new Date(dL,i,1);
dO.setDate(-1);
var dN=dO.getDate()+1;
dM+=dN;

if(dM<dK){dP++;
dQ+=dN;
}else{dQ=dK-(dM-dN);
break;
}}return {month:dP,day:dQ};
},__qc:function(dR,dS,dT){var dU;

switch(dS){case 11:dU=dR-1;

if(dR!=this.__pY(new Date(dU,dS,dT))){dU=dR;
}break;
case 0:dU=dR+1;

if(dR!=this.__pY(new Date(dU,dS,dT))){dU=dR;
}break;
default:dU=dR;
}return dU;
},_applyLocale:function(dV,dW){this.__ix=dV===null?this.setLocale(this.__pO):dV;
},format:function(dX){if(dX==null){return null;
}
if(this.__pP){dX=new Date(dX.getUTCFullYear(),dX.getUTCMonth(),dX.getUTCDate(),dX.getUTCHours(),dX.getUTCMinutes(),dX.getUTCSeconds(),dX.getUTCMilliseconds());
}var eb=this.__ix;
var eg=dX.getFullYear();
var ec=dX.getMonth();
var ef=dX.getDate();
var ej=dX.getDay();
var em=dX.getHours();
var es=dX.getMinutes();
var ek=dX.getSeconds();
var eq=dX.getMilliseconds();
var ei=dX.getTimezoneOffset();
var en=ei>0?1:-1;
var dY=Math.floor(Math.abs(ei)/60);
var ep=Math.abs(ei)%60;
this.__qd();
var er=cA;

for(var i=0;i<this.__pS.length;i++){var eh=this.__pS[i];

if(eh.type==bA){er+=eh.text;
}else{var ea=eh.character;
var el=eh.size;
var et=f;

switch(ea){case cf:if(el==2){et=this.__pT(eg%100,2);
}else{var ed=Math.abs(eg);
et=ed+cA;

if(el>et.length){for(var j=et.length;j<el;j++){et=bB+et;
}}
if(eg<0){et=cz+et;
}}break;
case p:et=this.__pY(dX)+cA;
var ed=et.replace(L,v);

if(el>et.length){for(var j=ed.length;j<el;j++){ed=bB+ed;
}}et=et.indexOf(cz)!=-1?cz+ed:ed;
break;
case H:if(el>=1&&el<=3){et=eg>0?cH:r;
}else if(el==4){et=eg>0?cN:w;
}else if(el==5){et=eg>0?bD:u;
}break;
case cL:if(el==1||el==2){et=this.__pT(parseInt(ec/4)+1,el);
}
if(el==3){et=cL+(parseInt(ec/4)+1);
}break;
case E:if(el==1||el==2){et=this.__pT(parseInt(ec/4)+1,el);
}
if(el==3){et=cL+(parseInt(ec/4)+1);
}break;
case bX:et=this.__pT(this.__pU(dX),el);
break;
case cu:et=this.__pT(ef,el);
break;
case l:et=this.__pT(this.__pW(dX),el);
break;
case df:et=this.__pX(dX);
break;
case c:if(el>=1&&el<=3){et=qx.locale.Date.getDayName(cy,ej,eb,cB);
}else if(el==4){et=qx.locale.Date.getDayName(cx,ej,eb,cB);
}else if(el==5){et=qx.locale.Date.getDayName(bG,ej,eb,cw);
}break;
case bV:var ee=qx.locale.Date.getWeekStart(eb);
var eo=1+((ej-ee>=0)?(ej-ee):7+(ej-ee));

if(el>=1&&el<=2){et=this.__pT(eo,el);
}else if(el==3){et=qx.locale.Date.getDayName(cy,ej,eb,cB);
}else if(el==4){et=qx.locale.Date.getDayName(cx,ej,eb,cB);
}else if(el==5){et=qx.locale.Date.getDayName(bG,ej,eb,cw);
}break;
case bK:var ee=qx.locale.Date.getWeekStart(eb);
var eo=1+((ej-ee>=0)?(ej-ee):7+(ej-ee));

if(el==1){et=v+eo;
}else if(el==3){et=qx.locale.Date.getDayName(cy,ej,eb,cB);
}else if(el==4){et=qx.locale.Date.getDayName(cx,ej,eb,cB);
}else if(el==5){et=qx.locale.Date.getDayName(bG,ej,eb,cw);
}break;
case cT:if(el==1||el==2){et=this.__pT(ec+1,el);
}else if(el==3){et=qx.locale.Date.getMonthName(cy,ec,eb,cB);
}else if(el==4){et=qx.locale.Date.getMonthName(cx,ec,eb,cB);
}else if(el==5){et=qx.locale.Date.getMonthName(bG,ec,eb,cw);
}break;
case X:if(el==1||el==2){et=this.__pT(ec+1,el);
}else if(el==3){et=qx.locale.Date.getMonthName(cy,ec,eb,cB);
}else if(el==4){et=qx.locale.Date.getMonthName(cx,ec,eb,cB);
}else if(el==5){et=qx.locale.Date.getMonthName(bG,ec,eb,cw);
}break;
case cg:et=(em<12)?qx.locale.Date.getAmMarker(eb):qx.locale.Date.getPmMarker(eb);
break;
case bt:et=this.__pT(em,el);
break;
case bL:et=this.__pT((em==0)?24:em,el);
break;
case bW:et=this.__pT(em%12,el);
break;
case I:et=this.__pT(((em%12)==0)?12:(em%12),el);
break;
case cX:et=this.__pT(es,el);
break;
case Q:et=this.__pT(ek,el);
break;
case bu:et=eq+cA;

if(el<=et.length){et=et.substr(0,el);
}else{for(var j=et.length;j<el;j++){et=et+bB;
}}break;
case q:if(el>=1&&el<=4){et=ck+((en>0)?cz:cK)+this.__pT(Math.abs(dY),2)+cP+this.__pT(ep,2);
}break;
case de:if(el>=1&&el<=3){et=((en>0)?cz:cK)+this.__pT(Math.abs(dY),2)+this.__pT(ep,2);
}else{et=ck+((en>0)?cz:cK)+this.__pT(Math.abs(dY),2)+cP+this.__pT(ep,2);
}break;
}er+=et;
}}return er;
},parse:function(eu){this.__qe();
var eD=this.__pQ.regex.exec(eu);

if(eD==null){throw new Error("Date string '"+eu+"' does not match the date format: "+this.__oO);
}var ev={era:1,year:1970,quarter:1,month:0,day:1,dayOfYear:1,hour:0,ispm:false,weekDay:4,weekYear:1970,weekOfMonth:1,weekOfYear:1,min:0,sec:0,ms:0};
var ex=1;
var ew=false;
var ey=false;

for(var i=0;i<this.__pQ.usedRules.length;i++){var ez=this.__pQ.usedRules[i];
var eA=eD[ex];

if(ez.field!=null){ev[ez.field]=parseInt(eA,10);
}else{ez.manipulator(ev,eA);
}
if(ez.pattern==cO){var eB=false;

for(var k=0;k<this.__pQ.usedRules.length;k++){if(this.__pQ.usedRules[k].pattern==cc){eB=true;
break;
}}
if(!eB){ew=true;
}}
if(ez.pattern.indexOf(t)!=-1){var eF=false;

for(var k=0;k<this.__pQ.usedRules.length;k++){if(this.__pQ.usedRules[k].pattern.indexOf(s)!=-1){eF=true;
break;
}}
if(!eF){ey=true;
}}ex+=(ez.groups==null)?1:ez.groups;
}
if(ew){ev.year=this.__qc(ev.weekYear,ev.month,ev.day);
}
if(ey){var eE=this.__qb(ev.dayOfYear,ev.year);
ev.month=eE.month;
ev.day=eE.day;
}
if(ev.era<0&&(ev.year*ev.era<0)){ev.year=ev.year*ev.era;
}var eC=new Date(ev.year,ev.month,ev.day,(ev.ispm)?(ev.hour+12):ev.hour,ev.min,ev.sec,ev.ms);

if(this.__pP){eC=new Date(eC.getUTCFullYear(),eC.getUTCMonth(),eC.getUTCDate(),eC.getUTCHours(),eC.getUTCMinutes(),eC.getUTCSeconds(),eC.getUTCMilliseconds());
}
if(ev.month!=eC.getMonth()||ev.year!=eC.getFullYear()){throw new Error("Error parsing date '"+eu+"': the value for day or month is too large");
}return eC;
},__qd:function(){if(this.__pS!=null){return;
}this.__pS=[];
var eK;
var eI=0;
var eM=cA;
var eG=this.__oO;
var eJ=bC;
var i=0;

while(i<eG.length){var eL=eG.charAt(i);

switch(eJ){case ce:if(eL==by){if(i+1>=eG.length){i++;
break;
}var eH=eG.charAt(i+1);

if(eH==by){eM+=eL;
i++;
}else{i++;
eJ=cn;
}}else{eM+=eL;
i++;
}break;
case bz:if(eL==eK){eI++;
i++;
}else{this.__pS.push({type:bz,character:eK,size:eI});
eK=null;
eI=0;
eJ=bC;
}break;
default:if((eL>=cg&&eL<=q)||(eL>=bD&&eL<=de)){eK=eL;
eJ=bz;
}else if(eL==by){if(i+1>=eG.length){eM+=eL;
i++;
break;
}var eH=eG.charAt(i+1);

if(eH==by){eM+=eL;
i++;
}i++;
eJ=ce;
}else{eJ=bC;
}
if(eJ!=bC){if(eM.length>0){this.__pS.push({type:bA,text:eM});
eM=cA;
}}else{eM+=eL;
i++;
}break;
}}if(eK!=null){this.__pS.push({type:bz,character:eK,size:eI});
}else if(eM.length>0){this.__pS.push({type:bA,text:eM});
}},__qe:function(){if(this.__pQ!=null){return ;
}var eQ=this.__oO;
this.__qg();
this.__qd();
var eW=[];
var eS=Y;

for(var eO=0;eO<this.__pS.length;eO++){var eX=this.__pS[eO];

if(eX.type==bA){eS+=qx.lang.String.escapeRegexpChars(eX.text);
}else{var eP=eX.character;
var eT=eX.size;
var eR;

for(var eY=0;eY<this.__pR.length;eY++){var eU=this.__pR[eY];

if(this.__qf(eU,eP,eT)){eR=eU;
break;
}}if(eR==null){var eV=cA;

for(var i=0;i<eT;i++){eV+=eP;
}throw new Error("Malformed date format: "+eQ+". Wildcard "+eV+" is not supported");
}else{eW.push(eR);
eS+=eR.regex;
}}}eS+=g;
var eN;

try{eN=new RegExp(eS);
}catch(fa){throw new Error("Malformed date format: "+eQ);
}this.__pQ={regex:eN,"usedRules":eW,pattern:eS};
},__qf:function(fb,fc,fd){if(fc===cf&&fb.pattern===cc){fb.regex=fb.regexFunc(fd);
return true;
}else if(fc===p&&fb.pattern===bk){fb.regex=fb.regexFunc(fd);
return true;
}else{return fc==fb.pattern.charAt(0)&&fd==fb.pattern.length;
}},__qg:function(){var fu=qx.util.format.DateFormat;
var fx=qx.lang.String;

if(this.__pR!=null){return ;
}var fv=this.__pR=[];
var fp=qx.locale.Date.getAmMarker(this.__ix).toString()||fu.AM_MARKER;
var fH=qx.locale.Date.getPmMarker(this.__ix).toString()||fu.PM_MARKER;
var fg=this.__ix;
var fm=function(fO,fP){fP=parseInt(fP,10);

if(fP>0){if(fP<fu.ASSUME_YEAR_2000_THRESHOLD){fP+=2000;
}else if(fP<100){fP+=1900;
}}fO.year=fP;
};
var fL=function(fQ,fR){fR=parseInt(fR,10);

if(fR>0){if(fR<fu.ASSUME_YEAR_2000_THRESHOLD){fR+=2000;
}else if(fR<100){fR+=1900;
}}fQ.weekYear=fR;
};
var fN=function(fS,fT){fS.month=parseInt(fT,10)-1;
};
var fk=function(fU,fV){var fX=qx.locale.Date.getWeekStart(fg);
var fW=(parseInt(fV,10)-1+fX)<=6?parseInt(fV,10)-1+fX:(parseInt(fV,10)-1+fX)-7;
fU.weekDay=fW;
};
var fi=function(fY,ga){var gb=qx.locale.Date.getPmMarker(fg).toString()||fu.PM_MARKER;
fY.ispm=(ga==gb);
};
var fo=function(gc,gd){gc.hour=parseInt(gd,10)%24;
};
var fh=function(ge,gf){ge.hour=parseInt(gf,10)%12;
};
var fA=function(gg,gh){return;
};
var fB=[bD,u];
var fE=function(gi,gj){gi.era=gj==bD?1:-1;
};
var fs=[cH,r];
var fr=function(gk,gl){gk.era=gl==cH?1:-1;
};
var fG=[cN,w];
var fq=function(gm,gn){gm.era=gn==cN?1:-1;
};
var fJ=[bJ,cp,da,e];
var fe=function(go,gp){go.quarter=fJ.indexOf(gp);
};
var fF=[bv,B,bI,ba];
var fz=function(gq,gr){gq.quarter=fF.indexOf(gr);
};
var fK=qx.locale.Date.getMonthNames(cy,fg,cB);

for(var i=0;i<fK.length;i++){fK[i]=fx.escapeRegexpChars(fK[i].toString());
}var fl=function(gs,gt){gt=fx.escapeRegexpChars(gt);
gs.month=fK.indexOf(gt);
};
var fw=qx.locale.Date.getMonthNames(cx,fg,cB);

for(var i=0;i<fw.length;i++){fw[i]=fx.escapeRegexpChars(fw[i].toString());
}var fC=function(gu,gv){gv=fx.escapeRegexpChars(gv);
gu.month=fw.indexOf(gv);
};
var fM=qx.locale.Date.getMonthNames(bG,fg,cw);

for(var i=0;i<fM.length;i++){fM[i]=fx.escapeRegexpChars(fM[i].toString());
}var fj=function(gw,gx){gx=fx.escapeRegexpChars(gx);
gw.month=fM.indexOf(gx);
};
var ff=qx.locale.Date.getDayNames(bG,fg,cw);

for(var i=0;i<ff.length;i++){ff[i]=fx.escapeRegexpChars(ff[i].toString());
}var fI=function(gy,gz){gz=fx.escapeRegexpChars(gz);
gy.weekDay=ff.indexOf(gz);
};
var fD=qx.locale.Date.getDayNames(cy,fg,cB);

for(var i=0;i<fD.length;i++){fD[i]=fx.escapeRegexpChars(fD[i].toString());
}var fn=function(gA,gB){gB=fx.escapeRegexpChars(gB);
gA.weekDay=fD.indexOf(gB);
};
var fy=qx.locale.Date.getDayNames(cx,fg,cB);

for(var i=0;i<fy.length;i++){fy[i]=fx.escapeRegexpChars(fy[i].toString());
}var ft=function(gC,gD){gD=fx.escapeRegexpChars(gD);
gC.weekDay=fy.indexOf(gD);
};
fv.push({pattern:cr,regexFunc:function(gE){var gF=ci;

for(var i=0;i<gE;i++){gF+=di;

if(i===gE-1&&i!==1){gF+=dh;
}}gF+=cF;
return gF;
},manipulator:fm});
fv.push({pattern:cO,regexFunc:function(gG){var gH=ci;

for(var i=0;i<gG;i++){gH+=di;

if(i===gG-1){gH+=dh;
}}gH+=cF;
return gH;
},manipulator:fL});
fv.push({pattern:bo,regex:cE+fs.join(cD)+cF,manipulator:fr});
fv.push({pattern:bp,regex:cE+fs.join(cD)+cF,manipulator:fr});
fv.push({pattern:M,regex:cE+fs.join(cD)+cF,manipulator:fr});
fv.push({pattern:cb,regex:cE+fG.join(cD)+cF,manipulator:fq});
fv.push({pattern:V,regex:cE+fB.join(cD)+cF,manipulator:fE});
fv.push({pattern:bg,regex:bF,field:bE});
fv.push({pattern:bO,regex:cC,field:bE});
fv.push({pattern:bn,regex:cE+fJ.join(cD)+cF,manipulator:fe});
fv.push({pattern:bh,regex:cE+fF.join(cD)+cF,manipulator:fz});
fv.push({pattern:y,regex:bF,field:bE});
fv.push({pattern:x,regex:cC,field:bE});
fv.push({pattern:T,regex:cE+fJ.join(cD)+cF,manipulator:fe});
fv.push({pattern:dk,regex:cE+fF.join(cD)+cF,manipulator:fz});
fv.push({pattern:m,regex:bF,manipulator:fN});
fv.push({pattern:co,regex:cC,manipulator:fN});
fv.push({pattern:cQ,regex:cE+fK.join(cD)+cF,manipulator:fl});
fv.push({pattern:bw,regex:cE+fw.join(cD)+cF,manipulator:fC});
fv.push({pattern:d,regex:cE+fM.join(cD)+cF,manipulator:fj});
fv.push({pattern:bT,regex:bF,manipulator:fN});
fv.push({pattern:bb,regex:cC,manipulator:fN});
fv.push({pattern:a,regex:cE+fK.join(cD)+cF,manipulator:fl});
fv.push({pattern:bY,regex:cE+fw.join(cD)+cF,manipulator:fC});
fv.push({pattern:bN,regex:cE+fM.join(cD)+cF,manipulator:fj});
fv.push({pattern:A,regex:cC,field:cj});
fv.push({pattern:s,regex:bF,field:cj});
fv.push({pattern:t,regex:bx,field:cG});
fv.push({pattern:cS,regex:cC,field:cG});
fv.push({pattern:bP,regex:bd,field:cG});
fv.push({pattern:ct,regex:cE+fD.join(cD)+cF,manipulator:fn});
fv.push({pattern:N,regex:cE+fD.join(cD)+cF,manipulator:fn});
fv.push({pattern:h,regex:cE+fD.join(cD)+cF,manipulator:fn});
fv.push({pattern:bc,regex:cE+fy.join(cD)+cF,manipulator:ft});
fv.push({pattern:O,regex:cE+ff.join(cD)+cF,manipulator:fI});
fv.push({pattern:bS,regex:bx,manipulator:fk});
fv.push({pattern:z,regex:cC,manipulator:fk});
fv.push({pattern:C,regex:cE+fD.join(cD)+cF,manipulator:fn});
fv.push({pattern:bH,regex:cE+fy.join(cD)+cF,manipulator:ft});
fv.push({pattern:dg,regex:cE+ff.join(cD)+cF,manipulator:fI});
fv.push({pattern:bl,regex:cm,manipulator:fk});
fv.push({pattern:P,regex:cE+fD.join(cD)+cF,manipulator:fn});
fv.push({pattern:bR,regex:cE+fy.join(cD)+cF,manipulator:ft});
fv.push({pattern:cq,regex:cE+ff.join(cD)+cF,manipulator:fI});
fv.push({pattern:G,regex:cE+fp+cD+fH+cF,manipulator:fi});
fv.push({pattern:ca,regex:bx,field:bm});
fv.push({pattern:K,regex:bx,field:ch});
fv.push({pattern:bi,regex:cC,field:ch});
fv.push({pattern:bM,regex:cC,field:cM});
fv.push({pattern:bj,regex:cC,field:cM});
fv.push({pattern:bq,regex:cC,manipulator:fo});
fv.push({pattern:cW,regex:cC,manipulator:fo});
fv.push({pattern:W,regex:cC,field:cM});
fv.push({pattern:F,regex:cC,field:cM});
fv.push({pattern:bU,regex:cC,manipulator:fh});
fv.push({pattern:dj,regex:cC,manipulator:fh});
fv.push({pattern:J,regex:cC,field:dc});
fv.push({pattern:bQ,regex:cC,field:dc});
fv.push({pattern:br,regex:cC,field:db});
fv.push({pattern:cR,regex:cC,field:db});
fv.push({pattern:S,regex:cJ,field:cI});
fv.push({pattern:cV,regex:cJ,field:cI});
fv.push({pattern:R,regex:cJ,field:cI});
fv.push({pattern:U,regex:bs,manipulator:fA});
fv.push({pattern:b,regex:be,manipulator:fA});
}},destruct:function(){if(this.__pN!=null){qx.locale.Manager.getInstance().removeBinding(this.__pN);
}this.__pS=this.__pQ=this.__pR=null;
}});
})();
(function(){var b="qx.ui.form.IDateForm",a="qx.event.type.Data";
qx.Interface.define(b,{events:{"changeValue":a},members:{setValue:function(c){return arguments.length==1;
},resetValue:function(){},getValue:function(){}}});
})();
(function(){var b="qx.event.type.Data",a="track.util.DateTimePicker";
qx.Class.define(a,{extend:qx.ui.container.Composite,implement:[qx.ui.form.IDateForm],construct:function(){qx.ui.container.Composite.call(this);
this.setLayout(new qx.ui.layout.VBox());
this.__qh=new qx.ui.form.DateField();
this.add(this.__qh);
this.__qi=new track.util.TimeField();
this.add(this.__qi);
},events:{"changeValue":b},members:{__qi:null,__qh:null,setValue:function(c){this.__qh.setValue(c);
this.__qi.setValue(c);
},getValue:function(){var d=this.__qh.getValue();
var e=this.__qi.getValue();
d.setHours(e.getHours());
d.setMinutes(e.getMinutes());
d.setSeconds(e.getSeconds());
return d;
},resetValue:function(){this.__qh.setValue(0);
this.__qi.setValue(0);
},setDateFormat:function(f){this.__qh.setDateFormat(f);
}}});
})();
(function(){var k="textfield",j="list",i="popup",h="button",g="popupOpen",f="blur",d="changeValue",c="Down",b="inner",a="",H="qx.dynlocale",G="focusin",F="focusout",E="qx.util.format.DateFormat",D="Escape",C="Left",B="Up",A="execute",z="qx.event.type.Data",y="changeLocale",r="visible",s="middle",p="String",q="_applyDateFormat",n="changeVisibility",o="mouseup",l="medium",m="click",t="qx.ui.form.DateField",u="datefield",w="_applyPlaceholder",v="hidden",x="Right";
qx.Class.define(t,{extend:qx.ui.core.Widget,include:[qx.ui.core.MRemoteChildrenHandling,qx.ui.form.MForm],implement:[qx.ui.form.IForm,qx.ui.form.IDateForm],construct:function(){qx.ui.core.Widget.call(this);
var J=new qx.ui.layout.HBox();
this._setLayout(J);
J.setAlignY(s);
var I=this._createChildControl(k);
this._createChildControl(h);
this.addListener(m,this._onClick,this);
this.addListener(f,this._onBlur,this);
this.addListener(G,function(e){I.fireNonBubblingEvent(G,qx.event.type.Focus);
},this);
this.addListener(F,function(e){I.fireNonBubblingEvent(F,qx.event.type.Focus);
},this);
this._setDefaultDateFormat();
this._addLocaleChangeLeistener();
},events:{"changeValue":z},properties:{dateFormat:{check:E,apply:q},placeholder:{check:p,nullable:true,apply:w},appearance:{refine:true,init:u},focusable:{refine:true,init:true},width:{refine:true,init:120}},statics:{__qj:null,__qk:null,getDefaultDateFormatter:function(){var K=qx.locale.Date.getDateFormat(l).toString();

if(K==this.__qj){return this.__qk;
}
if(this.__qk){this.__qk.dispose();
}this.__qk=new qx.util.format.DateFormat(K,qx.locale.Manager.getInstance().getLocale());
this.__qj=K;
return this.__qk;
}},members:{__ql:null,_setDefaultDateFormat:function(){this.setDateFormat(qx.ui.form.DateField.getDefaultDateFormatter());
},_addLocaleChangeLeistener:function(){if(qx.core.Environment.get(H)){this.__ql=qx.locale.Manager.getInstance().addListener(y,function(){this._setDefaultDateFormat();
},this);
}},setValue:function(L){var M=this.getChildControl(k);
M.setValue(this.getDateFormat().format(L));
var N=this.getChildControl(j);
N.setValue(L);
},getValue:function(){var O=this.getChildControl(k).getValue();
try{return this.getDateFormat().parse(O);
}catch(P){return null;
}},resetValue:function(){var Q=this.getChildControl(k);
Q.setValue(a);
var R=this.getChildControl(j);
R.setValue(null);
},open:function(){var S=this.getChildControl(i);
S.placeToWidget(this,true);
S.show();
},close:function(){this.getChildControl(i).hide();
},toggle:function(){var T=this.getChildControl(i).isVisible();

if(T){this.close();
}else{this.open();
}},_applyDateFormat:function(U,V){if(!V){return;
}try{var X=this.getChildControl(k);
var Y=X.getValue();
var W=V.parse(Y);
X.setValue(U.format(W));
}catch(ba){}},_applyPlaceholder:function(bb,bc){this.getChildControl(k).setPlaceholder(bb);
},_createChildControlImpl:function(bd,be){var bf;

switch(bd){case k:bf=new qx.ui.form.TextField();
bf.setFocusable(false);
bf.addState(b);
bf.addListener(d,this._onTextFieldChangeValue,this);
bf.addListener(f,this.close,this);
this._add(bf,{flex:1});
break;
case h:bf=new qx.ui.form.Button();
bf.setFocusable(false);
bf.setKeepActive(true);
bf.addState(b);
this._add(bf);
break;
case j:bf=new qx.ui.control.DateChooser();
bf.setFocusable(false);
bf.setKeepFocus(true);
bf.addListener(A,this._onChangeDate,this);
break;
case i:bf=new qx.ui.popup.Popup(new qx.ui.layout.VBox);
bf.setAutoHide(false);
bf.add(this.getChildControl(j));
bf.addListener(o,this._onChangeDate,this);
bf.addListener(n,this._onPopupChangeVisibility,this);
break;
}return bf||qx.ui.core.Widget.prototype._createChildControlImpl.call(this,bd);
},_onChangeDate:function(e){var bg=this.getChildControl(k);
var bh=this.getChildControl(j).getValue();
bg.setValue(this.getDateFormat().format(bh));
this.close();
},_onClick:function(e){var bi=e.getTarget();

if(bi==this.getChildControl(h)){this.toggle();
}else{this.close();
}},_onBlur:function(e){this.close();
},_onKeyPress:function(e){var bj=e.getKeyIdentifier();

if(bj==c&&e.isAltPressed()){this.toggle();
e.stopPropagation();
return;
}var bk=this.getChildControl(i);

if(bk.getVisibility()==v){return;
}if(bj==D){this.close();
e.stopPropagation();
return;
}if(bj===C||bj===x||bj===c||bj===B){e.preventDefault();
}this.getChildControl(j).handleKeyPress(e);
},_onPopupChangeVisibility:function(e){e.getData()==r?this.addState(g):this.removeState(g);
var bm=this.getChildControl(i);

if(bm.isVisible()){var bn=this.getChildControl(j);
var bl=this.getValue();
bn.setValue(bl);
}},_onTextFieldChangeValue:function(e){var bo=this.getValue();

if(bo!=null){var bp=this.getChildControl(j);
bp.setValue(bo);
}this.fireDataEvent(d,this.getValue());
},isEmpty:function(){var bq=this.getChildControl(k).getValue();
return bq==null||bq==a;
}},destruct:function(){if(qx.core.Environment.get(H)){if(this.__ql){qx.locale.Manager.getInstance().removeListenerById(this.__ql);
}}}});
})();
(function(){var l="selected",k="click",j="last-month-button",h="default",g="next-month-button",f="otherMonth",d="month-year-label",c="last-year-button",b="navigation-bar",a="next-year-button",bj="date-pane",bi="PageUp",bh="mousedown",bg="today",bf="Integer",be="PageDown",bd="changeLocale",bc="next-month-button-tooltip",bb="last-month-button-tooltip",ba="qx.dynlocale",s="last-year-button-tooltip",t="next-year-button-tooltip",q="weekend",r="day",o="lastMonth",p="Next month",m="Escape",n="Left",w="weekday",z="changeValue",H="Space",F="Down",P="qx.ui.control.DateChooser",K="Date",V="Enter",T="dblclick",B="day#",Y="Next year",X="_applyValue",W="Up",A="weekday#",D="datechooser",E="header",G="week",I="lastYear",L="nextYear",Q="changeShownYear",U="week#",u="Last month",v="Last year",C="mouseup",O="keypress",N="",M="nextMonth",S="Right",R="week#0",J="changeShownMonth";
qx.Class.define(P,{extend:qx.ui.core.Widget,include:[qx.ui.core.MExecutable,qx.ui.form.MForm],implement:[qx.ui.form.IExecutable,qx.ui.form.IForm,qx.ui.form.IDateForm],construct:function(bk){qx.ui.core.Widget.call(this);
var bm=new qx.ui.layout.VBox();
this._setLayout(bm);
this._createChildControl(b);
this._createChildControl(bj);
this.addListener(O,this._onKeyPress);
var bl=(bk!=null)?bk:new Date();
this.showMonth(bl.getMonth(),bl.getFullYear());
if(qx.core.Environment.get(ba)){qx.locale.Manager.getInstance().addListener(bd,this._updateDatePane,this);
}this.addListener(bh,this._onMouseUpDown,this);
this.addListener(C,this._onMouseUpDown,this);
},statics:{MONTH_YEAR_FORMAT:qx.locale.Date.getDateTimeFormat("yyyyMMMM","MMMM yyyy"),WEEKDAY_FORMAT:"EE",WEEK_FORMAT:"ww"},properties:{appearance:{refine:true,init:D},width:{refine:true,init:200},height:{refine:true,init:150},shownMonth:{check:bf,init:null,nullable:true,event:J},shownYear:{check:bf,init:null,nullable:true,event:Q},value:{check:K,init:null,nullable:true,event:z,apply:X}},members:{__qm:null,__qn:null,__qo:null,_forwardStates:{invalid:true},_createChildControlImpl:function(bn,bo){var bp;

switch(bn){case b:bp=new qx.ui.container.Composite(new qx.ui.layout.HBox());
bp.add(this.getChildControl(c));
bp.add(this.getChildControl(j));
bp.add(this.getChildControl(d),{flex:1});
bp.add(this.getChildControl(g));
bp.add(this.getChildControl(a));
this._add(bp);
break;
case s:bp=new qx.ui.tooltip.ToolTip(this.tr(v));
break;
case c:bp=new qx.ui.toolbar.Button();
bp.addState(I);
bp.setFocusable(false);
bp.setToolTip(this.getChildControl(s));
bp.addListener(k,this._onNavButtonClicked,this);
break;
case bb:bp=new qx.ui.tooltip.ToolTip(this.tr(u));
break;
case j:bp=new qx.ui.toolbar.Button();
bp.addState(o);
bp.setFocusable(false);
bp.setToolTip(this.getChildControl(bb));
bp.addListener(k,this._onNavButtonClicked,this);
break;
case bc:bp=new qx.ui.tooltip.ToolTip(this.tr(p));
break;
case g:bp=new qx.ui.toolbar.Button();
bp.addState(M);
bp.setFocusable(false);
bp.setToolTip(this.getChildControl(bc));
bp.addListener(k,this._onNavButtonClicked,this);
break;
case t:bp=new qx.ui.tooltip.ToolTip(this.tr(Y));
break;
case a:bp=new qx.ui.toolbar.Button();
bp.addState(L);
bp.setFocusable(false);
bp.setToolTip(this.getChildControl(t));
bp.addListener(k,this._onNavButtonClicked,this);
break;
case d:bp=new qx.ui.basic.Label();
bp.setAllowGrowX(true);
bp.setAnonymous(true);
break;
case G:bp=new qx.ui.basic.Label();
bp.setAllowGrowX(true);
bp.setAllowGrowY(true);
bp.setSelectable(false);
bp.setAnonymous(true);
bp.setCursor(h);
break;
case w:bp=new qx.ui.basic.Label();
bp.setAllowGrowX(true);
bp.setAllowGrowY(true);
bp.setSelectable(false);
bp.setAnonymous(true);
bp.setCursor(h);
break;
case r:bp=new qx.ui.basic.Label();
bp.setAllowGrowX(true);
bp.setAllowGrowY(true);
bp.setCursor(h);
bp.addListener(bh,this._onDayClicked,this);
bp.addListener(T,this._onDayDblClicked,this);
break;
case bj:var bq=new qx.ui.layout.Grid();
bp=new qx.ui.container.Composite(bq);

for(var i=0;i<8;i++){bq.setColumnFlex(i,1);
}
for(var i=0;i<7;i++){bq.setRowFlex(i,1);
}var br=this.getChildControl(R);
br.addState(E);
bp.add(br,{column:0,row:0});
this.__qm=[];

for(var i=0;i<7;i++){br=this.getChildControl(A+i);
bp.add(br,{column:i+1,row:0});
this.__qm.push(br);
}this.__qn=[];
this.__qo=[];

for(var y=0;y<6;y++){var br=this.getChildControl(U+(y+1));
bp.add(br,{column:0,row:y+1});
this.__qo.push(br);
for(var x=0;x<7;x++){var br=this.getChildControl(B+((y*7)+x));
bp.add(br,{column:x+1,row:y+1});
this.__qn.push(br);
}}this._add(bp);
break;
}return bp||qx.ui.core.Widget.prototype._createChildControlImpl.call(this,bn);
},_applyValue:function(bs,bt){if((bs!=null)&&(this.getShownMonth()!=bs.getMonth()||this.getShownYear()!=bs.getFullYear())){this.showMonth(bs.getMonth(),bs.getFullYear());
}else{var bv=(bs==null)?-1:bs.getDate();

for(var i=0;i<6*7;i++){var bu=this.__qn[i];

if(bu.hasState(f)){if(bu.hasState(l)){bu.removeState(l);
}}else{var bw=parseInt(bu.getValue(),10);

if(bw==bv){bu.addState(l);
}else if(bu.hasState(l)){bu.removeState(l);
}}}}},_onMouseUpDown:function(e){var bx=e.getTarget();

if(bx==this.getChildControl(b)||bx==this.getChildControl(bj)){e.stopPropagation();
return;
}},_onNavButtonClicked:function(by){var bA=this.getShownYear();
var bz=this.getShownMonth();

switch(by.getCurrentTarget()){case this.getChildControl(c):bA--;
break;
case this.getChildControl(j):bz--;

if(bz<0){bz=11;
bA--;
}break;
case this.getChildControl(g):bz++;

if(bz>=12){bz=0;
bA++;
}break;
case this.getChildControl(a):bA++;
break;
}this.showMonth(bz,bA);
},_onDayClicked:function(bB){var bC=bB.getCurrentTarget().dateTime;
this.setValue(new Date(bC));
},_onDayDblClicked:function(){this.execute();
},_onKeyPress:function(bD){var bH=null;
var bF=null;
var bG=null;

if(bD.getModifiers()==0){switch(bD.getKeyIdentifier()){case n:bH=-1;
break;
case S:bH=1;
break;
case W:bH=-7;
break;
case F:bH=7;
break;
case bi:bF=-1;
break;
case be:bF=1;
break;
case m:if(this.getValue()!=null){this.setValue(null);
return true;
}break;
case V:case H:if(this.getValue()!=null){this.execute();
}return;
}}else if(bD.isShiftPressed()){switch(bD.getKeyIdentifier()){case bi:bG=-1;
break;
case be:bG=1;
break;
}}
if(bH!=null||bF!=null||bG!=null){var bE=this.getValue();

if(bE!=null){bE=new Date(bE.getTime());
}
if(bE==null){bE=new Date();
}else{if(bH!=null){bE.setDate(bE.getDate()+bH);
}
if(bF!=null){bE.setMonth(bE.getMonth()+bF);
}
if(bG!=null){bE.setFullYear(bE.getFullYear()+bG);
}}this.setValue(bE);
}},showMonth:function(bI,bJ){if((bI!=null&&bI!=this.getShownMonth())||(bJ!=null&&bJ!=this.getShownYear())){if(bI!=null){this.setShownMonth(bI);
}
if(bJ!=null){this.setShownYear(bJ);
}this._updateDatePane();
}},handleKeyPress:function(e){this._onKeyPress(e);
},_updateDatePane:function(){var ca=qx.ui.control.DateChooser;
var bW=new Date();
var bP=bW.getFullYear();
var bU=bW.getMonth();
var bS=bW.getDate();
var cb=this.getValue();
var ce=(cb==null)?-1:cb.getFullYear();
var cl=(cb==null)?-1:cb.getMonth();
var bX=(cb==null)?-1:cb.getDate();
var bT=this.getShownMonth();
var ci=this.getShownYear();
var bQ=qx.locale.Date.getWeekStart();
var cc=new Date(this.getShownYear(),this.getShownMonth(),1);
var bY=new qx.util.format.DateFormat(ca.MONTH_YEAR_FORMAT);
this.getChildControl(d).setValue(bY.format(cc));
var ck=cc.getDay();
var bV=1+((7-ck)%7);
var cd=new qx.util.format.DateFormat(ca.WEEKDAY_FORMAT);

for(var i=0;i<7;i++){var cf=(i+bQ)%7;
var ch=this.__qm[i];
cc.setDate(bV+cf);
ch.setValue(cd.format(cc));

if(qx.locale.Date.isWeekend(cf)){ch.addState(q);
}else{ch.removeState(q);
}}cc=new Date(ci,bT,1,12,0,0);
var bL=(7+ck-bQ)%7;
cc.setDate(cc.getDate()-bL);
var cg=new qx.util.format.DateFormat(ca.WEEK_FORMAT);

for(var bK=0;bK<6;bK++){this.__qo[bK].setValue(cg.format(cc));

for(var i=0;i<7;i++){var ch=this.__qn[bK*7+i];
var bO=cc.getFullYear();
var bN=cc.getMonth();
var bR=cc.getDate();
var bM=(ce==bO&&cl==bN&&bX==bR);

if(bM){ch.addState(l);
}else{ch.removeState(l);
}
if(bN!=bT){ch.addState(f);
}else{ch.removeState(f);
}var cj=(bO==bP&&bN==bU&&bR==bS);

if(cj){ch.addState(bg);
}else{ch.removeState(bg);
}ch.setValue(N+bR);
ch.dateTime=cc.getTime();
cc.setDate(cc.getDate()+1);
}}bY.dispose();
cd.dispose();
cg.dispose();
}},destruct:function(){if(qx.core.Environment.get(ba)){qx.locale.Manager.getInstance().removeListener(bd,this._updateDatePane,this);
}this.__qm=this.__qn=this.__qo=null;
}});
})();
(function(){var e="inherit",d="toolbar-button",c="keydown",b="qx.ui.toolbar.Button",a="keyup";
qx.Class.define(b,{extend:qx.ui.form.Button,construct:function(f,g,h){qx.ui.form.Button.call(this,f,g,h);
this.removeListener(c,this._onKeyDown);
this.removeListener(a,this._onKeyUp);
},properties:{appearance:{refine:true,init:d},show:{refine:true,init:e},focusable:{refine:true,init:false}}});
})();
(function(){var k="textfield",j="button",i="list",h="changeValue",g="selected",f="inner",d="focusin",c="popup",b="focusout",a="blur",w="Enter",v="key",u="Down",t="qx.event.type.Data",s="visible",r="quick",q="String",p="qx.ui.form.ComboBox",o="single",n="combobox",l="click",m="_applyPlaceholder";
qx.Class.define(p,{extend:qx.ui.form.AbstractSelectBox,implement:[qx.ui.form.IStringForm],construct:function(){qx.ui.form.AbstractSelectBox.call(this);
var x=this._createChildControl(k);
this._createChildControl(j);
this.addListener(l,this._onClick);
this.addListener(d,function(e){x.fireNonBubblingEvent(d,qx.event.type.Focus);
},this);
this.addListener(b,function(e){x.fireNonBubblingEvent(b,qx.event.type.Focus);
},this);
},properties:{appearance:{refine:true,init:n},placeholder:{check:q,nullable:true,apply:m}},events:{"changeValue":t},members:{__nR:null,__qp:null,_applyPlaceholder:function(y,z){this.getChildControl(k).setPlaceholder(y);
},_createChildControlImpl:function(A,B){var C;

switch(A){case k:C=new qx.ui.form.TextField();
C.setFocusable(false);
C.addState(f);
C.addListener(h,this._onTextFieldChangeValue,this);
C.addListener(a,this.close,this);
this._add(C,{flex:1});
break;
case j:C=new qx.ui.form.Button();
C.setFocusable(false);
C.setKeepActive(true);
C.addState(f);
this._add(C);
break;
case i:C=qx.ui.form.AbstractSelectBox.prototype._createChildControlImpl.call(this,A);
C.setSelectionMode(o);
break;
}return C||qx.ui.form.AbstractSelectBox.prototype._createChildControlImpl.call(this,A);
},_forwardStates:{focused:true,invalid:true},tabFocus:function(){var D=this.getChildControl(k);
D.getFocusElement().focus();
D.selectAllText();
},focus:function(){qx.ui.form.AbstractSelectBox.prototype.focus.call(this);
this.getChildControl(k).getFocusElement().focus();
},setValue:function(E){var F=this.getChildControl(k);

if(F.getValue()==E){return;
}F.setValue(E);
},getValue:function(){return this.getChildControl(k).getValue();
},resetValue:function(){this.getChildControl(k).setValue(null);
},_onKeyPress:function(e){var H=this.getChildControl(c);
var G=e.getKeyIdentifier();

if(G==u&&e.isAltPressed()){this.getChildControl(j).addState(g);
this.toggle();
e.stopPropagation();
}else if(G==w){if(H.isVisible()){this._setPreselectedItem();
this.resetAllTextSelection();
this.close();
e.stop();
}}else if(H.isVisible()){qx.ui.form.AbstractSelectBox.prototype._onKeyPress.call(this,e);
}},_onClick:function(e){var I=e.getTarget();

if(I==this.getChildControl(j)){this.toggle();
}else{this.close();
}},_onListMouseDown:function(e){this._setPreselectedItem();
},_setPreselectedItem:function(){if(this.__nR){var J=this.__nR.getLabel();

if(this.getFormat()!=null){J=this.getFormat().call(this,this.__nR);
}if(J&&J.translate){J=J.translate();
}this.setValue(J);
this.__nR=null;
}},_onListChangeSelection:function(e){var K=e.getData();

if(K.length>0){var M=this.getChildControl(i);
var L=M.getSelectionContext();

if(L==r||L==v){this.__nR=K[0];
}else{var N=K[0].getLabel();

if(this.getFormat()!=null){N=this.getFormat().call(this,K[0]);
}if(N&&N.translate){N=N.translate();
}this.setValue(N);
this.__nR=null;
}}},_onPopupChangeVisibility:function(e){qx.ui.form.AbstractSelectBox.prototype._onPopupChangeVisibility.call(this,e);
var P=this.getChildControl(c);

if(P.isVisible()){var Q=this.getChildControl(i);
var R=this.getValue();
var O=null;

if(R){O=Q.findItem(R);
}
if(O){Q.setSelection([O]);
}else{Q.resetSelection();
}}else{if(e.getOldData()==s){this.tabFocus();
}}this.getChildControl(j).removeState(g);
},_onTextFieldChangeValue:function(e){var U=e.getData();
var T=this.getChildControl(i);

if(U!=null){var S=T.findItem(U,false);

if(S){T.setSelection([S]);
}else{T.resetSelection();
}}else{T.resetSelection();
}this.fireDataEvent(h,U,e.getOldData());
},getTextSelection:function(){return this.getChildControl(k).getTextSelection();
},getTextSelectionLength:function(){return this.getChildControl(k).getTextSelectionLength();
},setTextSelection:function(V,W){this.getChildControl(k).setTextSelection(V,W);
},clearTextSelection:function(){this.getChildControl(k).clearTextSelection();
},selectAllText:function(){this.getChildControl(k).selectAllText();
},resetAllTextSelection:function(){this.clearTextSelection();
this.selectAllText();
}}});
})();
(function(){var q="list",p="textfield",o=":",n="popup",l="",k="0:00",j="00",i="mouseup",h="track.util.TimeField",g=":0",c="releaseSlider",f="changeValue",d="watcheetimefield",b="button";
qx.Class.define(h,{extend:qx.ui.form.ComboBox,construct:function(){qx.ui.form.ComboBox.call(this);
this.getChildControl(p).setValue(k);
},properties:{appearance:{refine:true,init:d}},members:{_onClick:function(e){var r=this.getChildControl(n).isVisible();
var s=e.getTarget();
this.info("target="+s);

if(s==this.getChildControl(b)){this.toggle();
}else{this.closePopup();
}},toggle:function(){var t=this.getChildControl(n).isVisible();

if(t){this.closePopup();
}else{this.open();
this.getChildControl(q).slider.activate();
}},close:function(){var a=1;
},closePopup:function(){this.getChildControl(n).hide();
},setValue:function(u){var w=this.getChildControl(p);
var m=u.getMinutes();

if(m==0){m=j;
}var v=u.getSeconds();
var z=l;

if(v!=0){if(v<10)z=g+v;
else z=o+v;
}w.setValue(u.getHours()+o+m+z);
var x=this.getChildControl(q);
x.setValue(u);
},getValue:function(){var B=this.getChildControl(p).getValue().replace(/\./g,o);
var A=new Date(0);
if(B.search(/(([01])?[0-9]|2[0-3]):[0-5][0-9]/)>-1||B.search(/(([01])?[0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]/)>-1){var C=B.split(o);
A.setHours(C[0]);
A.setMinutes(C[1]);

if(C.length>2)A.setSeconds(C[2]);
return A;
}else{return A;
}},resetValue:function(){var D=this.getChildControl(p);
D.setValue(k);
var E=this.getChildControl(q);
E.setValue(0);
},_createChildControlImpl:function(F){var G;

switch(F){case q:G=new track.util.DayTimeSlider();
G.createTimer(l,0,200);
G.setFocusable(false);
G.setKeepFocus(true);
G.addListener(c,this._onChangeDate,this);
break;
case n:G=new qx.ui.popup.Popup(new qx.ui.layout.VBox);
G.setAutoHide(false);
G.add(this.getChildControl(q));
G.addListener(i,this._onChangeDate,this);
break;
}return G||qx.ui.form.ComboBox.prototype._createChildControlImpl.call(this,F);
},findItem:function(y){},_onChangeDate:function(e){var I=this.getChildControl(p);
var H=this.getChildControl(q).getValue();
var J=H.getMinutes();

if(J==0)J=j;
I.setValue(H.getHours()+o+J);
this.closePopup();
},_onTextFieldChangeValue:function(e){var K=this.getValue();

if(K!=null){var L=this.getChildControl(q);
L.setValue(K);
}this.fireDataEvent(f,this.getValue());
},isEmpty:function(){var M=this.getChildControl(p).getValue();
return M==null||M==l;
}}});
})();
(function(){var i="auto",h="overflowX",g="visible",f="hidden",e="scroll",d="overflowY",c="_applyOverflowX",b="_applyOverflowY",a="qx.ui.core.MNativeOverflow";
qx.Mixin.define(a,{properties:{overflowX:{check:[f,g,e,i],nullable:true,apply:c},overflowY:{check:[f,g,e,i],nullable:true,apply:b},overflow:{group:[h,d]}},members:{_applyOverflowX:function(j){this.getContentElement().setStyle(h,j);
},_applyOverflowY:function(k){this.getContentElement().setStyle(d,k);
}}});
})();
(function(){var o="none",n="text",m="",l="userSelect",k="color",j="String",i="engine.name",h="0px",g="webkit",f="changeHtml",c="_applyCssClass",e="class",d="qx.ui.embed.Html",b="_applyHtml",a="html";
qx.Class.define(d,{extend:qx.ui.core.Widget,include:[qx.ui.core.MNativeOverflow],construct:function(p){qx.ui.core.Widget.call(this);

if(p!=null){this.setHtml(p);
}},properties:{html:{check:j,apply:b,event:f,nullable:true},cssClass:{check:j,init:m,apply:c},selectable:{refine:true,init:true},focusable:{refine:true,init:true}},members:{getFocusElement:function(){return this.getContentElement();
},_applyHtml:function(q,r){var s=this.getContentElement();
s.setAttribute(a,q||m);
s.setStyles({"padding":h,"border":o});
},_applyCssClass:function(t,u){this.getContentElement().setAttribute(e,t);
},_applySelectable:function(v){qx.ui.core.Widget.prototype._applySelectable.call(this,v);
if((qx.core.Environment.get(i)==g)){this.getContainerElement().setStyle(l,v?n:o);
this.getContentElement().setStyle(l,v?n:o);
}},_applyFont:function(w,x){var y=w?qx.theme.manager.Font.getInstance().resolve(w).getStyles():qx.bom.Font.getDefaultStyles();
this.getContentElement().setStyles(y);
},_applyTextColor:function(z,A){if(z){this.getContentElement().setStyle(k,qx.theme.manager.Color.getInstance().resolve(z));
}else{this.getContentElement().removeStyle(k);
}}}});
})();
(function(){var ca=",",bY="Label",bX="",bW="myTimeplotView",bV="kmh",bU="#",bT="visible",bS="#000000",bR="js/timeline-ajax/simile-ajax-bundle.js?x=1",bQ="#00FF00",bw="js/timeline/timeline-bundle.js?x=1",bv="right",bu="js/timeplot/timeplot-bundle.js?x=1",bt="undefined",bs="-",br="track.statistic.TimeplotView",bq='px;"></div>',bp="h",bo="plotCourse",bn='iso8601',ch="js/timeline-ajax/",ci='js/timeplot/timeplot-bundle.css',cf="#80cc80",cg="js/timeplot/scripts/sources.js?x=1",cd="iso8601",ce="js/timeline-ajax/scripts/date-time.js?x=1",cb="plotHeight",cc="js/timeline/scripts/overview-painter.js?x=1",cj="&",ck="2006-06-03T02:45:00,88,512,95\n",bJ="js/timeline-ajax/scripts/string.js?x=1",bI="i",bL="js/timeplot/scripts/math.js?x=1",bK="js/timeline-ajax/scripts/dom.js?x=1",bN="js/timeline-ajax/scripts/platform.js?x=1",bM="2006-06-03T12:49:00,37,502,120\n",bP="=",bO="plotKmh",bH="js/timeline/",bG="statisticTimeplot.debug",a="js/timeline-ajax/scripts/xmlhttp.js?x=1",b="TimeplotView.js exception",c="2006-06-02T16:46:00,92,499,105\n",d="js/timeplot/scripts/timeplot.js?x=1",f="#606060",g="js/timeline/scripts/labellers.js?x=1",h=" <i>history</i>",j="js/timeline-ajax/scripts/ajax.js?x=1",k='px',m="js/timeline/scripts/band.js?x=1",co="2006-06-02T23:20:00,40,490,105\n",cn="js/timeplot/scripts/color.js?x=1",cm="js/timeline/scripts/themes.js?x=1",cl="#8080cc",cs="statisticTimeplot.maxValues",cr="js/timeline-ajax/scripts/signal.js?x=1",cq='js/timeline/timeline-bundle.css',cp="js/timeline/scripts/detailed-painter.js?x=1",cu="valueGeometryKmh",ct="js/timeline/scripts/timeline.js?x=1",M="course",N="infoMsgBox",K="id",L=" ",Q="js/timeline-ajax/scripts/graphics.js?x=1",R="js/timeline-ajax/scripts/debug.js?x=1",O="js/timeline/scripts/event-utils.js?x=1",P="#FF0000",I="2006-06-02T12:45:00,87,470,90\n",J="js/timeplot/scripts/plot.js?x=1",v="t",u="#4B088A",x=" m",w="js/timeline/scripts/original-painter.js?x=1",r="js/timeline-ajax/scripts/html.js?x=1",p="js/timeplot/scripts/processor.js?x=1",t="js/timeline-ajax/scripts/data-structure.js?x=1",s="On tour",o=" km/h",n="top",W="plotAlarm",X="js/timeline/scripts/decorators.js?x=1",Y="js/timeline/scripts/ether-painters.js?x=1",ba="\n",S="js/timeline/scripts/ethers.js?x=1",T="js/timeline/scripts/sources.js?x=1",U="  ",V="all",bb="2006-06-03T18:50:00,100,600,87",bc="left",F=" °",E="js/timeline-ajax/scripts/window-manager.js?x=1",D="#0000FF",C="true",B="excluded",A="bottom",z="%1 plot data read ...",y="2006-06-02T19:46:00,90,490,105\n",H='images/32/statusLine/alarmOn.png',G="Plot data %1/%2 ...",bd="js/timeline-ajax/scripts/jquery-1.3.2.min.js?x=1",be="someArg",bf="js/timeplot/scripts/geometry.js?x=1",bg="#B441FF",bh="2006-06-03T10:48:00,0,530,110\n",bi="combo",bj="js/timeline-ajax/scripts/units.js?x=1",bk="js/timeline/scripts/compact-painter.js?x=1",bl="2006-06-03T02:47:00,0,512,95\n",bm="js/timeline-ajax/scripts/history.js?x=1",bA="false",bz='<div id="myTimeplotView" style="height: ',by="Plot created (%1)",bx='#FF0000',bE="Statistic is not available, please contact the support",bD="Creating plot ...",bC="js/timeline-ajax/scripts/json.js?x=1",bB="?",bF="js/timeplot/";
qx.Class.define(br,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(cv,cw,cx){qx.core.Object.call(this);
this.trackGui=cv;
this.mapInfoGui=new track.map.MapInfoGui(this.trackGui);
this.statisticWindow=cw;
this.timeplotGroup=cx;
this.resizeTimerID=null;
this.counter=0;
this.timeplotViewAtom=null;
this.timeplotData=bX;
this.alarmJson=null;
this.timeplot=null;
this.timeplotHeight=180;
this.timeplotWidth=900;
this.eventSourceKmh=null;
this.eventSourceHeight=null;
this.eventSourceCourse=null;
this.eventSourceAlarm=null;
this.countDataRead=0;
this.timeplotIsInitialized=false;
},members:{onResize:function(){qx.event.Timer.once(this.__qq,this,100);
},__qq:function(){if(this.timeplot!=null)this.timeplot.repaint();
},setVisible:function(cy){this.timeplotViewAtom.setVisibility(cy?bT:B);

if(cy){this.createTimeplot();
}},isVisible:function(){var cz=(this.timeplotViewAtom.getVisibility()==bT);
return cz;
},changedWantedYAxis:function(cA){this.__qs(cA);
},__qr:function(){SimileAjax.DateTime.gregorianUnitLengths[SimileAjax.DateTime.DAY]=SimileAjax.DateTime.gregorianUnitLengths[SimileAjax.DateTime.HOUR]*24*2;
this.eventSourceAlarm=new Timeplot.DefaultEventSource();
this.eventSourceKmh=new Timeplot.DefaultEventSource();
this.eventSourceKmh.columnKmh=1;
this.eventSourceKmh.colorKmh=u;
this.eventSourceKmh.fillColor=bg;
var cD=new Timeplot.DefaultValueGeometry({id:cu,gridColor:this.eventSourceKmh.colorKmh,axisLabelsPlacement:bc,axisColor:bQ,gridLineWidth:2.0,min:0});
this.eventSourceHeight=new Timeplot.DefaultEventSource();
this.eventSourceHeight.columnHeight=2;
this.eventSourceHeight.colorHeight=D;
this.eventSourceHeight.fillColor=cl;
var cE=new Timeplot.DefaultValueGeometry({gridColor:this.eventSourceHeight.colorHeight,axisLabelsPlacement:bv});
this.eventSourceCourse=new Timeplot.DefaultEventSource();
this.eventSourceCourse.columnCourse=3;
this.eventSourceCourse.colorCourse=bQ;
this.eventSourceCourse.fillColor=cf;
var cB=new Timeplot.DefaultValueGeometry({gridColor:this.eventSourceCourse.colorCourse,axisLabelsPlacement:bv});
var cC=new Timeplot.DefaultTimeGeometry({gridColor:new Timeplot.Color(bS),axisColor:f,gridColor:bS,gridLineWidth:0.5,timeValuePosition:A,axisLabelsPlacement:n});
this.plotInfo=[Timeplot.createPlotInfo({id:bO,dataSource:new Timeplot.ColumnSource(this.eventSourceKmh,this.eventSourceKmh.columnKmh),valueGeometry:cD,timeGeometry:cC,lineColor:this.eventSourceKmh.colorKmh,fillColor:this.eventSourceKmh.fillColor,valueEntity:o,showValues:true}),Timeplot.createPlotInfo({id:cb,dataSource:new Timeplot.ColumnSource(this.eventSourceHeight,this.eventSourceHeight.columnHeight),valueGeometry:cE,timeGeometry:cC,lineColor:this.eventSourceHeight.colorHeight,fillColor:this.eventSourceHeight.fillColor,valueEntity:x,showValues:true}),Timeplot.createPlotInfo({id:bo,dataSource:new Timeplot.ColumnSource(this.eventSourceCourse,this.eventSourceCourse.columnCourse),valueGeometry:cB,timeGeometry:cC,lineColor:this.eventSourceCourse.colorCourse,fillColor:this.eventSourceCourse.fillColor,valueEntity:F,showValues:true}),Timeplot.createPlotInfo({id:W,timeGeometry:cC,eventSource:this.eventSourceAlarm,lineColor:P})];
this.eventSourceAlarm.addListener(this.timeplotListener);
return this.plotInfo;
},getMyTimeplotViewDiv:function(){var parent=document.getElementById(bW);
if(parent!=null){parent.style.height=(this.timeplotHeight-30)+k;
}return parent;
},removeMyTimeplotViewDiv:function(){var cF=document.getElementById(bW);

if(cF!=null){cF.parentNode.removeChild(cF);
}},createDivParent:function(){if(this.timeplotViewAtom!=null)return this.timeplotViewAtom;

if(true){var cG=bz+(this.timeplotHeight-30)+bq;
this.timeplotViewAtom=new qx.ui.embed.Html(cG);
this.timeplotViewAtom.setPadding(0);
this.timeplotViewAtom.setMargin(0);
}else{this.timeplotViewAtom=new qx.ui.basic.Atom();
this.timeplotViewAtom.getContainerElement().setAttribute(K,bW);
}this.timeplotViewAtom.setMinHeight(this.timeplotHeight);
this.timeplotViewAtom.setMaxHeight(this.timeplotHeight);
this.timeplotViewAtom.setHeight(this.timeplotHeight);
this.timeplotViewAtom.setWidth(this.timeplotWidth);
this.timeplotViewAtom.setMaxWidth(this.timeplotWidth);
return this.timeplotViewAtom;
},__qs:function(cH){if(!this.isVisible()){return;
}this.timeplotGroup.setStatusLabelValue(this.trc(bY,bD));
var cH=cH||bV;

if(this.timeplot!=null){this.timeplot.dispose();
}this.plotInfo=this.__qr();
var parent=this.getMyTimeplotViewDiv();

try{this.timeplot=Timeplot.create(parent,this.plotInfo);
}catch(e){this.trackGui.errorMsgBoxDeveloper(b,e);
return;
}var cI=null;
var cJ=cd;

if(cH==bV){this.eventSourceKmh.loadText(this.timeplotData,ca,org.xmlBlaster.util.getLocation().href,cI,cJ);
}else if(cH==bp){this.eventSourceHeight.loadText(this.timeplotData,ca,org.xmlBlaster.util.getLocation().href,cI,cJ);
}else if(cH==M){this.eventSourceCourse.loadText(this.timeplotData,ca,org.xmlBlaster.util.getLocation().href,cI,cJ);
}else if(cH==bi){this.eventSourceKmh.loadText(this.timeplotData,ca,org.xmlBlaster.util.getLocation().href,cI,cJ);
this.eventSourceHeight.loadText(this.timeplotData,ca,org.xmlBlaster.util.getLocation().href,cI,cJ);
}else{this.eventSourceKmh.loadText(this.timeplotData,ca,org.xmlBlaster.util.getLocation().href,cI,cJ);
this.eventSourceHeight.loadText(this.timeplotData,ca,org.xmlBlaster.util.getLocation().href,cI,cJ);
this.eventSourceCourse.loadText(this.timeplotData,ca,org.xmlBlaster.util.getLocation().href,cI,cJ);
}
if(this.alarmJson!=null){this.eventSourceAlarm.loadJSON(this.alarmJson,org.xmlBlaster.util.getLocation().href);
}this.timeplotGroup.setStatusLabelValue(this.trc(bY,by,this.countDataRead));
},onCheckboxVisible:function(cK){if(cK){this.setVisible(true);

if(this.timeplot!=null){this.__qt();
}else{this.__qu(true);
}}else{this.setVisible(false);
}},__qt:function(){if(this.timeplotGroup.timeplotDataCacheInfo==null){return;
}
if(!this.isVisible()){return;
}var parent=this.getMyTimeplotViewDiv();

if(parent.clientHeight==0){this.info("Waiting 50msec for DIV to grow ...");
qx.event.Timer.once(this.__qt,this,50);
return;
}var cL=this.timeplotGroup.filterView.getStartDate();
var cM=this.timeplotGroup.filterView.getEndDate();
this.loadDataFromCache(this.timeplotGroup.timeplotDataCacheInfo,cL,cM);
},createTimeplot:function(cN){this.doLoadTestData=(cN==undefined)?true:cN;
this.__qu();
},__qu:function(){if(this.timeplot!=null)return;
var cO=true;

if(cO){if(!this.trackGui.lazyLoadTriggered){this.trackGui.lazyLoadTriggered=true;
SimileAjax={loaded:false,loadingScriptsCount:0,error:null,params:{bundle:C}};
SimileAjax.Platform=new Object();
SimileAjax.urlPrefix=ch;
SimileAjax.prefixURLs=function(cP,cQ,cR){for(var i=0;i<cR.length;i++){cP.push(cQ+cR[i]);
}};
SimileAjax.parseURLParameters=function(cS,cT,cU){cT=cT||{};
cU=cU||{};

if(typeof cS==bt){cS=location.href;
}var q=cS.indexOf(bB);

if(q<0){return cT;
}cS=(cS+bU).slice(q+1,cS.indexOf(bU));
var db=cS.split(cj),cY,dd={};
var cV=window.decodeURIComponent||unescape;

for(var i=0;cY=db[i];i++){var dc=cY.indexOf(bP);
var name=cV(cY.slice(0,dc));
var cW=dd[name];

if(typeof cW==bt){cW=[];
}else if(!(cW instanceof Array)){cW=[cW];
}dd[name]=cW.concat(cV(cY.slice(dc+1)));
}
for(var i in dd){if(!dd.hasOwnProperty(i))continue;
var cX=cU[i]||String;
var da=dd[i];

if(!(da instanceof Array)){da=[da];
}
if(cX===Boolean&&da[0]==bA){cT[i]=false;
}else{cT[i]=cX.apply(this,da);
}}return cT;
};
window.Timeline=new Object();
window.Timeline.DateTime=window.SimileAjax.DateTime;
window.Timeline.urlPrefix=bH;
window.Timeplot={loaded:false,params:{bundle:true,autoCreate:true},importers:{}};
window.Timeplot.urlPrefix=bF;
LazyLoad.css(cq,function(){LazyLoad.css(ci,function(){var df=[bR,bw,bu];
var de=xbProperties.getBoolean(bG,false);

if(de){df=[bR,bw,bu,j,t,ce,R,bK,Q,bm,r,bd,bC,bN,cr,bJ,bj,E,a,m,bk,X,cp,Y,S,O,g,w,cc,T,cm,ct,cn,bf,bL,J,p,cg,d];
}LazyLoad.js(df,function(dg){this.trackGui.lazyLoadFinished=true;
this.info(df+' has been loaded');
},be,this);
},null,this);
},null,this);
}}else{this.trackGui.lazyLoadTriggered=true;
this.trackGui.lazyLoadFinished=true;
}this.counter++;
var parent=this.getMyTimeplotViewDiv();
if(parent==null||this.trackGui.lazyLoadFinished==false){if(this.counter>100){this.counter=0;

if(!this.isVisible()){this.info("TimeplotView: parent="+parent+" this.trackGui.lazyLoadFinished="+this.trackGui.lazyLoadFinished+" visible=false");
return ;
}this.error("TimeplotView: parent="+parent+" this.trackGui.lazyLoadFinished="+this.trackGui.lazyLoadFinished);
this.trackGui.infoMsgBox(this.trc(N,bE));
return;
}qx.event.Timer.once(this.__qu,this,100);
return;
}this.__qv();
},isTimeplotInitialized:function(){return this.timeplotIsInitialized;
},__qv:function(){this.counter=0;
this.timeplotIsInitialized=true;
this.timeplotGroup.onTimeplotIsInitialized();

if(this.doLoadTestData&&this.timeplotGroup.timeplotDataCacheInfo==null){this.doLoadTestData=false;
this.__qw();
this.__qs(V);
}else{this.__qt();
}},timeplotListener:function(dh){alert("TimeplotListener has fired");
},__qw:function(){this.timeplotData=I+c+y+co+ck+bl+bh+bM+bb;
return this.timeplotData;
},loadDataFromCache:function(di,dj,dk){var dj=dj||null;
var dk=dk||null;

if(di==null)return;

if(!this.isVisible()){return;
}var dw=xbProperties.getInt(cs,200);
var dB=[];

for(var i=0,l=di.gpsDataArr.length;i<l;i++){var dv=di.gpsDataArr[i];
var dz=dv.getUtcDateObj();

if(dj!=null&&dz.getTime()<dj.getTime()||dk!=null&&dz.getTime()>dk.getTime()){continue;
}dB.push(dv);
}var dm=[];

for(var i=0,l=dB.length;i<l;i++){var dv=dB[i];
var dx=dv.isValid()&&dv.hasLatLonNotNull();

if(!dx){continue;
}dm.push(dv);
}this.timeplotData=bX;
var dl=0;

for(var i=0,l=dm.length;i<l;i++){var dv=dm[i];

if(l>dw){var dp=dw-dl;

try{var dA=(dp==0)?1:(Math.round((l-i)/dp)+1);
if((i%dA)==0){;
}else{continue;
}}catch(dD){this.warn("enmeas.size()="+l+" limit="+dw+" count="+dl+" divisor="+dp);
}}dl++;

if((dl%50)==0){this.timeplotGroup.setStatusLabelValue(this.trc(bY,G,dl,di.gpsDataArr.length));
}this.timeplotData+=dv.getUtcIsoStr()+ca+dv.getSpeedKmhInteger();
this.timeplotData+=ca+dv.getHeight();
this.timeplotData+=ca+dv.getCourse();
this.timeplotData+=ba;
}var dm=[];

for(var i=0,l=dB.length;i<l;i++){var dv=dB[i];

if(dv.hasAlarm()){dm.push(dv);
}}var dl=0;
this.alarmJson={'dateTimeFormat':bn,'events':[]};

for(var i=0,l=dm.length;i<l;i++){var dv=dm[i];

if(l>dw){var dp=dw-dl;

try{var dA=(dp==0)?1:(Math.round((l-i)/dp)+1);
if((i%dA)==0){;
}else{continue;
}}catch(dE){this.warn("enmeas.size()="+l+" limit="+dw+" count="+dl+" divisor="+dp);
}}dl++;
var dr=di.device.getBuddyTO().getAliasAndLoginName();
dr+=h;
var dn=dv.getInfo(bI,bX)+U+dv.getInfo(v,bX);

if(dn.length==0){dn=s;
}var dq=L;
var dC=null;
var dt=null;
var du=this.timeplotGroup.getSelectedDevice();
var dy=du.getTrack(dv.getTrackName(null));
var ds=this.mapInfoGui.getGpsCompleteHtml(dv,dn,dq,dr,dC,dt,du,dy);
this.alarmJson.events.push({'start':dv.getUtcIsoStr(),'title':dv.getAlarmType(),'durationEvent':false,'description':ds,'image':H,'color':bx,'callbackFp':this.onClickCallback,'callbackThis':this,'callbackArg':dv});
}this.timeplotGroup.setStatusLabelValue(this.trc(bY,z,dl));
this.countDataRead=dl;
this.__qs(this.timeplotGroup.getSelectedYAxis());
},onClickCallback:function(dF,dG,dH,dI){if(dI.hasLatLonNotNull()){this.showOnMap(dI);
}this.timeplotGroup.historyTableView.focusGpsDataRow(dI);
var dJ=null;
var dL=null;
var dM=null;
var dK=this.trackGui.getMapInfoGui().getGpsCompleteHtml(dI,dJ,dL,dM);
this.trackGui.msgBox.infoMsgBox(dK,null,false);
return true;
},showOnMap:function(dN){var dO=this.timeplotGroup.getSelectedDevice();
var dP=dO.getTrack(dN.getTrackName(null));
this.trackGui.watchee.getMapManager().showAndCenterLocation(dP,dN);
},__qx:function(dQ){for(var i=0;i<dQ.length;i++){var dR=dQ[i];
dR[0]=dR[0].replace(/\//g,bs);
}return dQ;
},clear:function(){try{if(this.timeplot!=null){this.timeplot.dispose();
this.timeplot=null;
this.timeplotIsInitialized=false;
}}catch(dS){this.error("TimeplotView.js dispose failed: "+dS);
}}},destruct:function(){this.destroyPopup();
}});
})();
(function(){var a="track.map.I_MapInfoDrawer";
qx.Interface.define(a,{members:{processMarkerSelection:function(b,c,d,e){},getGpsCompleteHtml:function(f,g,h,i,j,k,l,m){},getXsmsHtml:function(n){},getGpsHtml:function(o,p,q,r,s){},getGpsDetailHtml:function(t,u){}}});
})();
(function(){var bX="</td>",bW="<tr>",bV="</tr>",bU="<td class='gpsMapValue'>",bT="MapInfo",bS="<td class='gpsMapLabel'>",bR="",bQ=" / ",bP="-",bO=" ",bv="MapInfo.Xsms",bu="</th>",bt="</table>",bs="/",br="</thead>",bq="<img src='",bp="<thead>",bo="<table class='gpsMapLabel'>",bn="</a>",bm="<th class='gpsMapLabel' colspan='2'>",cf="<td class='xsmsMapValue'>",cg="\",\"",cd="/>",ce="h",cb="Time:",cc="'/>",bY=" km/h",ca=" m</td>",ch="<a href='#' onclick='",ci="\")",bH="Speed:",bG="Overall Distance:",bJ=" deg",bI="; return false;'>",bL="<table><tr><td>",bK="</td><td>",bN="alarm",bM="\n",bF="<th class='xsmsMapLabel' width='33%'>",bE="</td></tr></table>",a=" (local)",b="<td class='gpsMapLabel' colspan='2'>",c="yardfaktor",d="Latitude/Longitude:",f="<td class='gpsMapValue' style='color:red'>",g="To",h="CellId/Mcc/Mnc/Lac:",j="&z=12' target='_blank'>",k="zulnr",m="Longitude:",cm="bootstyp",cl="Device:",ck="Input status:",cj="club",cq="Height:",cp="mapInfoShowHeight",co="XSMS-To:",cn="idnr",cs="Bootstyp/Schiffname:",cr="' border='0' alt='Phone' width='32' height='32' ",L="Date",M="</a> ",J="Alarm:",K="Course/Height:",P="32/statusLine/telephone.png",Q="<td class='xsmsMapBody' colspan='3'>",N="isDefault",O="<br>",H="Track:",I="&nbsp;",u="<b>",t="track.map.MapInfoGui.makePhoneCallToDevice(\"",w="' border='0' alt='Info' width='16' height='16' ",v="showGpsDataInfo caught exception, failed: ",q="Klasse/Yard:",p="klassen_folge",s="unknown",r="Make Phone Call:",o="mapInfoPopupPhoneCall",n="From",V="lastName",W="<th class='xsmsMapLabel' width='34%'>",X="Date:",Y="segelnr",R="XSMS-From:",S="<table class='gpsMapLabel' width='330'>",T="XSMS-Send-Date:",U="schiffname",ba="</b>",bb="track.map.MapInfoGui",E="<a href='http://maps.google.com/maps?f=q&q=",D="groupSubId",C="16/info_16.png",B="<br />",A="aliasName",z="Date/Time:",y="klasse",x="---",G="' target='_blank'>Google: ",F="track.map.MapInfoGui.showGpsDataInfo(\"",bc="<td class='gpsMapLabel' style='color:red'>",bd="Skipper:",be="Latitude:",bf="Output status:",bg="<td class='gpsMapLabel'>CellId/Mcc/Mnc/Lac:</td>",bh="mapClickPhoneCall",bi="firstName",bj="mapInfoOverallDistance",bk="<br> &nbsp; &nbsp; &nbsp;",bl="Link to google maps:",bz="Course:",by="useReverseGeocode",bx=" GMT</td>",bw="<td class='gpsMapLabel'>CellId/Mcc/Mnc:</td>",bD="?",bC="<a href='",bB="XSMS-Message:",bA=",";
qx.Class.define(bb,{extend:qx.core.Object,implement:[track.map.I_MapInfoDrawer],include:[qx.locale.MTranslation],construct:function(ct){qx.core.Object.call(this);
this.trackGui=ct;
},statics:{makePhoneCallToDevice:function(cu,cv){if(cu===undefined)cu=null;

if(cv===undefined)cv=null;
var cx=qx.core.ObjectRegistry.fromHashCode(cu);

if(cx!=null){cx.getLogger().info("makePhoneCallToDevice "+cu+" "+cv);
var cw=cx.watchee.getBuddyManager().getBuddyOrFriendOf(cv).getDevice();
cx.makePhoneCallToDevice(cw);
}else{alert("makePhoneCallToDevice failed, trackGui not found "+cu+" "+cv);
}},showGpsDataInfo:function(cy,cz,cA){if(cy===undefined)cy=null;

if(cz===undefined)cz=null;
var cD=qx.core.ObjectRegistry.fromHashCode(cy);

if(cD!=null)cD.info("Called MapInfoGui.js showGpsDataInfo: gpsSentence="+cz);
if(cD!=null&&cz!=null){var cE=bR;

try{if(xbProperties.getBoolean(by,true)&&navigator.geolocation){var cB=new net.watchee.GPSData(cz,null);
cE=cB.getAddressStr(bM);
}}catch(e){cD.warn("showGpsDataInfo caught exception: "+e);
}
if(cz.indexOf(net.watchee.GPSData.KEY_WATCHEE)==0){cz=cz.substring(net.watchee.GPSData.KEY_WATCHEE.length+1);
}cz+=bM+cE;
cD.info(cz);
var cC=cz.replace(/\n/g,O).replace(/\,/g,bk);
cD.msgBox.infoMsgBox(cC,null,false);
}else{alert("showGpsDataInfo failed, trackGui not found "+cy+" "+cz);
}}},members:{processMarkerSelection:function(cF,cG,cH,cI){if(cG!=null&&cG.ctrlKey==true){var cK=xbProperties.getBoolean(bh,false);

if(cK&&cH!=null){var cJ=cH.getDevice();
this.trackGui.makePhoneCallToDevice(cJ);
return false;
}}return true;
},getXsmsHtml:function(cL){var cM=bR;
cM+=S;
cM+=bp;
cM+=bW;
cM+=bF+this.trc(bv,n)+bu;
cM+=bF+this.trc(bv,g)+bu;
cM+=W+this.trc(bv,L)+bu;
cM+=bV;
cM+=br;
cM+=bW;
cM+=cf+cL.getFromStr()+bX;
cM+=cf+cL.getToStr()+bX;
cM+=cf+cL.getGmtTimeStr()+bX;
cM+=bV;
cM+=bW;
cM+=Q+cL.getBody()+bX;
cM+=bV;
cM+=bt;
return cM;
},getGpsHtml:function(cN,cO,cP,cQ,cR){var cU=bR;
cU+=bo;

if(org.xmlBlaster.util.isDefined(cO)){cU+=bp;
cU+=bW;
cU+=bm+cO+bu;
cU+=bV;
cU+=br;
}cU+=bW;
cU+=bS+this.trc(bT,cb)+bX;
cU+=bU+cN.getLocalTime()+this.trc(bT,a)+bX;
cU+=bV;
cU+=bW;

if(cN.isFromCellId()){var cT=cN.getMcc();
var cV=cN.getMnc();
var cX=cN.getCellId();
var cS=cX+bs+cT+bs+cV;
cU+=bw;
cU+=bU+cS+bX;
}else{cU+=bS+this.trc(bT,bH)+bX;
var cW=cN.getSpeedKmh().toFixed(0)+bY;
cU+=bU+cW+bX;
}cU+=bV;
cU+=bW;
cU+=bS+this.trc(bT,bz)+bX;
cU+=bU+cN.getCourse().toFixed(0)+this.trc(bT,bJ)+bX;
cU+=bV;

if(cN.getInfo(ce,null)!=null){cU+=bW;
cU+=bS+this.trc(bT,cq)+bX;
cU+=bU+cN.getInfo(ce,x)+ca;
cU+=bV;
}
if(org.xmlBlaster.util.isDefined(cP)){cU+=bW;
cU+=bS+this.trc(bT,bG)+bX;
cU+=bU+cP+bX;
cU+=bV;
}
if(org.xmlBlaster.util.isFilled(cQ)){cU+=bW;
cU+=b+cQ+bX;
cU+=bV;
}cU+=bt;

if(org.xmlBlaster.util.isDefined(cR)){cU=bL+cU+bK+cR+bE;
}return cU;
},getGpsCompleteHtml:function(cY,da,db,dc,dd,de,df,dg){var de=de||null;
var df=df||null;
var dR=bR;
dR+=bo;

if(org.xmlBlaster.util.isDefined(da)){dR+=bp;
dR+=bW;
dR+=bm+da+bu;
dR+=bV;
dR+=br;
}
if(de!=null){dR+=bW;
dR+=bS+this.trc(bv,R)+bX;
dR+=bU+de.getFromStr()+bX;
dR+=bV;
dR+=bW;
dR+=bS+this.trc(bv,co)+bX;
dR+=bU+de.getToStr()+bX;
dR+=bV;
dR+=bW;
dR+=bS+this.trc(bv,T)+bX;
dR+=bU+de.getGmtTimeStr()+bX;
dR+=bV;
dR+=bW;
dR+=bS+this.trc(bv,bB)+bX;
dR+=bU+de.getBody()+bX;
dR+=bV;

if(cY==null){dR+=bt;
return dR;
}}dR+=bW;
dR+=bS+this.trc(bT,z)+bX;
dR+=bU+cY.getLocalDate()+bO+cY.getLocalTime()+this.trc(bT,a)+bX;
dR+=bV;
dR+=bW;

if(cY.propertyCollectionGroupSubId!=null){var dw=cY.propertyCollectionGroupSubId;
var du=dw.getStr(cn,bR);
var di=dw.getStr(p,bR);
var dy=dw.getStr(y,bR);
var dP=dw.getStr(cm,bR);
var dL=dw.getStr(c,bR);
var dJ=dw.getStr(U,bR);
var dB=dw.getStr(k,bR);
var ds=dw.getStr(Y,bR);
var dO=dw.getStr(V,bR);
var dN=dw.getStr(bi,bR);
var dD=dw.getStr(cj,bR);
var dq=dw.getStr(D,dq);
var dk=dw.getStr(A,dq);
var dC=dw.getStr(N,false);

if(dy.length>0){dR+=bW;
dR+=bS+this.trc(bT,q)+bX;
var dM=(dL.length>0)?(bQ+dL):bR;
dR+=bU+dy+dM+bX;
dR+=bV;
}
if(dJ.length>0){dR+=bW;
dR+=bS+this.trc(bT,cs)+bX;
dR+=bU+dP+bQ+dJ+bX;
dR+=bV;
}
if(dO.length>0){dR+=bW;
dR+=bS+this.trc(bT,bd)+bX;
dR+=bU+dN+bO+dO+bO+dD+bX;
dR+=bV;
}}
if(cY.isFromCellId()){var dS=cY.getCellId();
var dF=cY.getMcc();
var dm=cY.getMnc();
var dG=cY.getLac();

if(dS==null)dS=bP;

if(dF==null)dF=bP;

if(dm==null)dm=bP;

if(dG==null)dG=bP;
var dr=dS+bQ+dF+bQ+dm+bQ+dG;
dR+=bS+this.trc(bT,h)+bX;
dR+=bU+dr+bX;
}else{dR+=bS+this.trc(bT,bH)+bX;
var dn=cY.getSpeedKmh().toFixed(0)+bY;
dR+=bU+dn+bX;
}dR+=bV;
var dp=cY.getGoogleMapsLink(12,cY.getTrackName(bR)+bO+cY.getAlarmTypeNotNull());
var dj=bC+dp+G+cY.latitudeDecimal(5)+bQ+cY.longitudeDecimal(5)+bn;
var dH=B+dj;
dR+=bW;
dR+=bS+this.trc(bT,d)+bX;
dR+=bU+cY.latitudeDegMinSec(1)+bQ+cY.longitudeDegMinSec(1)+bO+dH+bX;
dR+=bV;
var dK=xbProperties.getBoolean(cp,true);

if(dK){dR+=bW;
dR+=bS+this.trc(bT,K)+bX;
dR+=bU+cY.getCourse().toFixed(0)+this.trc(bT,bJ)+bQ+cY.getHeight(0)+ca;
dR+=bV;
}
if(cY.getCountInputStatus()>0){dR+=bW;
dR+=bS+this.trc(bT,ck)+bX;
dR+=bU;

for(var i=0,l=cY.getCountInputStatus();i<l;i++){var dE=i+1;

if(df!=null&&df.isInputAnalog(dE)){dk=df.getIOAnalogText(dE);
var dh=df.getIOAnalogComputedResultRounded(dE,bD,cY);
var dx=dh+df.getIOAnalogUnit(dE);
dR+=dx+I;
}else{var dQ=cY.getInputLedIcon(dE,16);
dR+=bq+dQ+cc;
}}dR+=bX;
dR+=bV;
}
if(cY.getCountOutputStatus()>0){dR+=bW;
dR+=bS+this.trc(bT,bf)+bX;
dR+=bU;

for(var i=0,l=cY.getCountOutputStatus();i<l;i++){var dE=i+1;
var dQ=cY.getOutputLedIcon(dE,16);
dR+=bq+dQ+cc;
}dR+=bX;
dR+=bV;
}
if(cY.getInfo(bN,null)!=null){dR+=bW;
dR+=bc+this.trc(bT,J)+bX;
dR+=f+cY.getInfo(bN,s)+bX;
dR+=bV;
}var dl=xbProperties.getBoolean(bj,true);

if(dl){if(org.xmlBlaster.util.isDefined(db)){dR+=bW;
dR+=bS+this.trc(bT,bG)+bX;
dR+=bU+db+bX;
dR+=bV;
}}var dz=xbProperties.getBoolean(o,false);

if(dz&&df!=null){var dz=t+this.trackGui.toHashCode()+cg+df.getDeviceId()+ci;
dR+=bW;
dR+=bS+this.trc(bT,r)+bX;
dR+=bU+ch+dz+bI+bq+xbGetIcon(P)+cr+cd+bn;
bX;
dR+=bV;
}
if(org.xmlBlaster.util.isFilled(dc)){var dI=bR;

if(df!=null){dI=df.getDeviceId();
}var dA=cY.makeWatcheeString(true);

try{var dv=dA.replace(/\"/g,bO).replace(/\'/g,bO).replace(/\n/g,bO);
this.trackGui.info("getGpsCompleteHtml:"+dv);
var dz=F+this.trackGui.toHashCode()+cg+dv+cg+dI+ci;
var dt=ch+dz+bI+bq+xbGetIcon(C)+w+cd+M;
dR+=bW;
dR+=b+dt+dc+bX;
dR+=bV;
}catch(dT){this.trackGui.errorMsgBoxDeveloper(v+dA,dT);
}}dR+=bt;

if(org.xmlBlaster.util.isDefined(dd)){dR=bL+dR+bK+dd+bE;
}return dR;
},getGpsDetailHtml:function(dU,dV){var ec=bR;
ec+=bo;

if(false){ec+=bp;
ec+=bW;
ec+=bm+header+bu;
ec+=bV;
ec+=br;
}ec+=bW;
ec+=bS+this.trc(bT,X)+bX;
ec+=bU+dU.getDate()+bX;
ec+=bV;
ec+=bW;
ec+=bS+this.trc(bT,cb)+bX;
ec+=bU+dU.getTime()+bx;
ec+=bV;
ec+=bW;
ec+=bS+this.trc(bT,be)+bX;
ec+=bU+dU.latitudeDegMinSec(1)+bX;
ec+=bV;
ec+=bW;
ec+=bS+this.trc(bT,m)+bX;
ec+=bU+dU.longitudeDegMinSec(1)+bX;
ec+=bV;
ec+=bW;
var eb=E+dU.latitudeDecimal(7)+bA+dU.longitudeDecimal(7)+j+dU.latitudeDecimal(5)+bQ+dU.longitudeDecimal(5)+bn;
ec+=bS+this.trc(bT,bl)+bX;
ec+=bU+eb+bX;
ec+=bV;
var dY=dU.getMcc();
var ed=dU.getMnc();
var ee=dU.getCellId();
var ea=dU.getLac();

if(ee!=null||dY!=null){if(ee==null)ee=bP;

if(dY==null)dY=bP;

if(ed==null)ed=bP;

if(ea==null)ea=bP;
var dX=ee+bs+dY+bs+ed+bs+ea;
var dW=(dU.isFromCellId())?u+dX+ba:dX;
ec+=bW;
ec+=bg;
ec+=bU+dW+bX;
ec+=bV;
}
if(org.xmlBlaster.util.isDefined(dV)){ec+=bW;
ec+=bS+this.trc(bT,cl)+bX;
ec+=bU+dV.getDeviceId()+bX;
ec+=bV;
ec+=bW;
ec+=bS+this.trc(bT,H)+bX;
ec+=bU+dV.getTrackName()+bX;
ec+=bV;
}ec+=bt;
return ec;
},clear:function(){}},destruct:function(){this._disposeFields();
this._disposeObjects();
}});
})();
(function(){var p="entity",o="tooltip",n="label",m="listItem",k="6%",j="8%",h="km",g="knots",f="hoursEntity",d="totalkm",bt="yearEntity",bs="sm",br="h ",bq="monthEntity",bp="totalmillis",bo="m ",bn="daysEntity",bm="kmh",bl="",bk="d ",w="sec",x="min ",u="minutesEntity",v="miles",s="y ",t="secondsEntity",q="meterpersec",r="minperkm",E="labelWithLineBreakForLayout",F="changeSelection",P="milesh",M=" km",X=" km/h",S="meterpermin",bg=" m",bd="Altitude: ",I="Please choose speed entity",bj="10%",bi="Total distance in kilometers",bh="Minute per kilometer (jogging)",H="One english landmile = 1.6093 kilometer",K="m/sec",L="mph",O="Limit the time range by setting up start and end date",Q="Mile per hour (US, UK)",T="Altitude difference by comparing adjacent height data and only adding them to the total when going uphill, in meters",ba="m/min",bf="13%",y="One nautical mile = 1.852 kilometer",z="Meter per second (physics)",J="Use Shift+Mouseclick to select a subset of GPS positions in the Table and calculate average values",W="Total elapsed time",V="&#xf8; Speed: ",U="Please choose distance entity",bc="Using above time range",bb="Kilometer per hour (metric system)",R="km/h",Y="Using above time range or selected rows",a="Kilometer",be="Distance: ",A="7%",B="Time: ",N="Meter per minute (horse riding)",b="Average speed in kilometers per hour",c="min/km",G="5%",C="track.statistic.AverageView",D="Nautical mile per hour (sailing)";
qx.Class.define(C,{extend:qx.ui.container.Composite,construct:function(bu,bv,bw){qx.ui.container.Composite.call(this);
this.trackGui=bu;
this.statisticWindow=bv;
this.timeplotGroup=bw;
this.layout=new qx.ui.layout.HBox(5);
this.setLayout(this.layout);
this.totalSpeedSum=0;
this.countSpeedInstances=0;
this.useAverageEntitySelectBox=true;
this.useDistanceEntitySelectBox=true;
this.create();
this.set({padding:[5,10],width:900,allowGrowX:true,allowStretchX:true});
},members:{create:function(){var bD=new qx.ui.basic.Label(this.trc(n,B));
bD.setToolTip(new qx.ui.tooltip.ToolTip(this.trc(n,W)));
var bE=new qx.ui.basic.Label(this.trc(n,be));
bE.setToolTip(new qx.ui.tooltip.ToolTip(this.trc(n,bi)));
var bx=new qx.ui.basic.Label().set({value:this.trc(n,V),rich:true});
bx.setToolTip(new qx.ui.tooltip.ToolTip(this.trc(n,b)));
var bB=new qx.ui.basic.Label(this.trc(n,bd));
bB.setToolTip(new qx.ui.tooltip.ToolTip(this.trc(n,T)));
var bA=new qx.ui.basic.Label(bl);

if(this.statisticWindow.supportsTableSelections){bA.setValue(this.trc(E,Y));
bA.setToolTip(new qx.ui.tooltip.ToolTip(this.trc(n,J)));
}else{bA.setValue(this.trc(E,bc));
bA.setToolTip(new qx.ui.tooltip.ToolTip(this.trc(n,O)));
}bA.setRich(true);
this.totalTime=new qx.ui.form.TextField().set({readOnly:true});
this.totalDistance=new qx.ui.form.TextField().set({readOnly:true});
this.distanceEntitySelectBox=new qx.ui.form.SelectBox();
this.distanceEntitySelectBox.setToolTipText(this.trc(o,U));
var bF=new qx.ui.form.ListItem(this.trc(m,h));
bF.setUserData(p,h);
bF.setToolTipText(this.trc(o,a));
this.distanceEntitySelectBox.add(bF);
var bH=new qx.ui.form.ListItem(this.trc(m,v));
bH.setUserData(p,v);
bH.setToolTipText(this.trc(o,H));
this.distanceEntitySelectBox.add(bH);
var bI=new qx.ui.form.ListItem(this.trc(m,bs));
bI.setUserData(p,bs);
bI.setToolTipText(this.trc(o,y));
this.distanceEntitySelectBox.add(bI);
this.distanceEntitySelectBox.setSelection([bF]);
this.distanceEntitySelectBox.addListener(F,function(e){var bL=(e.getData().length==0)?null:e.getData()[0];

if(bL==null)return ;
this.updateDistanceField();
},this);
this.averageSpeed=new qx.ui.form.TextField().set({readOnly:true});
this.averageEntitySelectBox=new qx.ui.form.SelectBox();
this.averageEntitySelectBox.setToolTipText(this.trc(o,I));
var bG=new qx.ui.form.ListItem(this.trc(m,R));
bG.setUserData(p,bm);
bG.setToolTipText(this.trc(o,bb));
this.averageEntitySelectBox.add(bG);
var bJ=new qx.ui.form.ListItem(this.trc(m,c));
bJ.setUserData(p,r);
bJ.setToolTipText(this.trc(o,bh));
this.averageEntitySelectBox.add(bJ);
var bK=new qx.ui.form.ListItem(this.trc(m,ba));
bK.setUserData(p,S);
bK.setToolTipText(this.trc(o,N));
this.averageEntitySelectBox.add(bK);
var bC=new qx.ui.form.ListItem(this.trc(m,K));
bC.setUserData(p,q);
bC.setToolTipText(this.trc(o,z));
this.averageEntitySelectBox.add(bC);
var bz=new qx.ui.form.ListItem(this.trc(m,L));
bz.setUserData(p,P);
bz.setToolTipText(this.trc(o,Q));
this.averageEntitySelectBox.add(bz);
var by=new qx.ui.form.ListItem(this.trc(m,g));
by.setUserData(p,g);
by.setToolTipText(this.trc(o,D));
this.averageEntitySelectBox.add(by);
this.averageEntitySelectBox.setSelection([bG]);
this.averageEntitySelectBox.addListener(F,function(e){var bM=(e.getData().length==0)?null:e.getData()[0];

if(bM==null)return ;
this.updateAverageField();
},this);
this.altDiff=new qx.ui.form.TextField().set({readOnly:true});
this.add(bD,{width:G});
this.add(this.totalTime,{width:bf});
this.add(bE,{width:k});
this.add(this.totalDistance,{width:(this.useDistanceEntitySelectBox?j:bj)});

if(this.useDistanceEntitySelectBox)this.add(this.distanceEntitySelectBox,{width:A});
this.add(bx,{width:k});
this.add(this.averageSpeed,{width:(this.useAverageEntitySelectBox?j:j)});

if(this.useAverageEntitySelectBox)this.add(this.averageEntitySelectBox,{width:j});
this.add(bB,{width:k});
this.add(this.altDiff,{width:k});
this.add(bA,{flex:4});
},getSelectedAverageEntity:function(){var bN=this.averageEntitySelectBox.getSelection()[0];

if(bN==null)return bm;
return bN.getUserData(p);
},getSelectedDistanceEntity:function(){var bO=this.distanceEntitySelectBox.getSelection()[0];

if(bO==null)return h;
return bO.getUserData(p);
},onCheckboxVisible:function(bP){if(bP){this.show();
var bQ=this.timeplotGroup.filterView.getStartDate();
var bR=this.timeplotGroup.filterView.getEndDate();
this.loadDataFromCache(this.timeplotGroup.timeplotDataCacheInfo,bQ,bR);
}else{this.exclude();
}},loadDataFromCache:function(bS,bT,bU){var bT=bT||null;
var bU=bU||null;

if(bS==null)return;

if(!this.isVisible()){return;
}this.countSpeedInstances=0;
this.totalSpeedSum=0;
var ci=0;
var bW=0;
var bV=null;
var bY=null;
var cg=null;
var cj=null;
var cc=null;
var ch=null;

for(var i=0,l=bS.gpsDataArr.length;i<l;i++){var cb=bS.gpsDataArr[i];
var ce=cb.getUtcDateObj();

if(bT!=null&&ce.getTime()<bT.getTime()||bU!=null&&ce.getTime()>bU.getTime()){continue;
}bY=cb;

if(bV==null){bV=bY;
cc=bV.getUtcDateObj();
cg=bV.hasValidHeight()?bV.getHeight():null;
}ch=bY.getUtcDateObj();
this.totalSpeedSum+=bY.getSpeedKmhInteger();
this.countSpeedInstances++;
cj=bY.hasValidHeight()?bY.getHeight():null;

if(cg!=null&&cj!=null){var bX=cj-cg;

if(bX>0)ci+=bX;
}var ca=bY.getDistance(bV);
bW+=ca;
bV=bY;

if(cj!=null){cg=cj;
}}this.altDiff.setValue(ci.toString()+bg);
this.totalDistance.setUserData(d,bW);
this.updateDistanceField();

if(ch!=null&&cc!=null){var cf=ch.getTime()-cc.getTime();
this.totalTime.setUserData(bp,cf);
var cd=org.xmlBlaster.util.getDiffDateHumanReadable(cf,this.trc(bt,s),this.trc(bq,bo),this.trc(bn,bk),this.trc(f,br),this.trc(u,x),this.trc(t,w));
this.totalTime.setValue(cd.result);
}else{this.totalTime.setValue(bl);
this.totalTime.setUserData(bp,0);
}this.updateAverageField();
},updateDistanceField:function(){var cm=this.getSelectedDistanceEntity();
var ck=this.totalDistance.getUserData(d);
var cl=0;

if(cm==h){cl=ck;
}else if(cm==v){cl=ck*0.621371;
}else if(cm==bs){cl=ck*0.5399568;
}
if(this.useAverageEntitySelectBox){this.totalDistance.setValue(cl.toFixed(3));
}else{this.totalDistance.setValue(cl.toFixed(3).toString()+M);
}},updateAverageField:function(){var cs=this.getSelectedAverageEntity();
var cn=(this.countSpeedInstances==0)?1:this.countSpeedInstances;
var co=this.totalTime.getUserData(bp);

if(co==null)co=0;
var cy=this.totalDistance.getUserData(d);

if(cy==null)cy=0;
var cu=0;

if(cs==bm){var cx=Math.round(this.totalSpeedSum/cn);
var ct=co/1000.0/60.0/60.0;

if(ct>0)cu=(cy/ct).toFixed(1);
this.info("totalKm="+cy+" hours="+ct+" average="+cu+" mediumOfSeparateSpeeds="+cx);
}else if(cs==r){var cp=co/1000.0/60.0;

if(cy>0){cu=(cp/cy).toFixed(2);
var cq=cu*60*1000;
var cz=org.xmlBlaster.util.getDiffDateHumanReadable(cq,this.trc(bt,s),this.trc(bq,bo),this.trc(bn,bk),this.trc(f,br),this.trc(u,x),this.trc(t,w));
cu=cz.result;
}}else if(cs==S){var cr=cy*1000;
var cp=co/1000.0/60.0;

if(cp>0){cu=(cr/cp).toFixed(1);
}}else if(cs==q){var cr=cy*1000.0;
var cw=co/1000.0;

if(cw>0)cu=(cr/cw).toFixed(2);
}else if(cs==P){var cv=cy*0.621371;
var ct=co/1000.0/60.0/60.0;

if(ct>0)cu=(cv/ct).toFixed(1);
}else if(cs==g){var cv=cy*0.5399568;
var ct=co/1000.0/60.0/60.0;

if(ct>0)cu=(cv/ct).toFixed(1);
}
if(this.useAverageEntitySelectBox){this.averageSpeed.setValue(cu.toString());
}else{this.averageSpeed.setValue(cu.toString()+X);
}},calculateAverages:function(cA){if(!this.isVisible()){return;
}var cB=0;
var cN=0;
var cF=0;
var cD=0;
var cC=null;
var cG=null;
var cI=null;
var cM=null;

for(var i=0;i<cA.length;i++){cG=cA[i];

if(cC==null){cC=cG;
cI=cC.getUtcDateObj();
}cM=cG.getUtcDateObj();
cN+=cG.getSpeedKmhInteger();
cB++;
var cE=cG.getHeight()-cC.getHeight();

if(cE>0)cF+=cE;
var cH=cG.getDistance(cC);
cD+=cH;
cC=cG;
}
if(cB==0)cB=1;
var cJ=Math.round(cN/cB);
this.averageSpeed.setValue(cJ.toString()+X);
this.altDiff.setValue(cF.toString()+bg);
this.totalDistance.setValue(cD.toPrecision(3).toString()+M);

if(cM!=null&&cI!=null){var cL=cM.getTime()-cI.getTime();
var cK=org.xmlBlaster.util.getDiffDateHumanReadable(cL,this.trc(bt,s),this.trc(bq,bo),this.trc(bn,bk),this.trc(f,br),this.trc(u,x),this.trc(t,w));
this.totalTime.setValue(cK.result);
}else{this.totalTime.setValue(bl);
}}},destruct:function(){}});
})();
(function(){var m="table title",k="",j=",",h="Label",g="0",f="visible",d="1",c="v [km/h]",b="Height [m]",a="volt",be="ch",bd="excluded",bc="Address",bb="Lat / Lon",ba="No Web-Server found for: ",Y="Down",X="<a href='",W="Up",V="googleMaps",U="ActionType=xmlScript&xmlScriptBase64=",t="Bat [V]",u="Content-length",r="sat",s="qx.ui.table.pane.Clipper",p="changeSelection",q="Table data %1/%2 ...",n="XbAccess.js#postXmlScript",o="/",x="track.statistic.HistoryTableView",y="Alarm",G=" / ",E="<br> &nbsp; &nbsp; &nbsp;",M="</a>",I="Sat",Q="communication.noConnection",O="' target='_blank'>",A="application/x-www-form-urlencoded;charset=UTF-8",T="Table loaded (%1)",S="Course [°]",R="keypress",z="cellClick",C="red",D="Charged",F="IN",H="<br>",J="Content-Type",N=" ",P="Date (local)",v=";",w="green",B="undefined",L="OUT",K="GET";
qx.Class.define(x,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(bf,bg,bh){qx.core.Object.call(this);
this.trackGui=bf;
this.mapInfoGui=new track.map.MapInfoGui(this.trackGui);
this.statisticWindow=bg;
this.timeplotGroup=bh;
this.isReverseGeocodeInStatistikChecked=this.timeplotGroup.filterView.showAddressCheckBox.getValue();
var bi=0;
this.COL_DATE=bi++;
this.COL_LATLONLINK=bi++;
this.COL_SPEED=bi++;
this.COL_COURSE=bi++;
this.COL_HEIGHT=bi++;
this.COL_SAT=bi++;
this.COL_VOLTAGE=bi++;
this.COL_ISCHARGED=bi++;
this.COL_ALARM=bi++;
this.COL_ADDRESS=bi++;
this.outputNumber=bi++;
this.table=null;
this.tableModel=null;
this.keypressListenerId=null;
this.clear(true);
this.gpsLatLonAddressCacheHashtable=new org.xmlBlaster.util.Hashtable();
},members:{getRowCount:function(){return this.tableModel.getRowCount();
},createTable:function(){var bp=[];

if(this.tableModel!=null){this.clear(true);
}this.tableModel=new qx.ui.table.model.Simple();
var bn=[this.trc(m,P),this.trc(m,bb),this.trc(m,c),this.trc(m,S),this.trc(m,b),this.trc(m,I),this.trc(m,t),this.trc(m,D),this.trc(m,y),this.trc(m,bc)];
var bq=this.timeplotGroup.getSelectedDevice();
this.countIN=(bq==null)?0:bq.getDeviceInfo().getCountInputControls();
var bs=bq.isInputAnalog(1)?42:32;
this.startIndexIN=bn.length;

for(var bt=0;bt<this.countIN;bt++){var bm=bt+1;

if((bm==1||bm==2)&&bq!=null&&bq.isInputAnalog(bm)){bn.push(bq.getIOAnalogUnit(bm));
}else{bn.push(F+bm);
}}this.countOUT=(bq==null)?0:bq.getDeviceInfo().getCountOutputControls();
var bj=44;
this.startIndexOUT=bn.length;

for(var bl=0;bl<this.countOUT;bl++){bn.push(L+(bl+1));
}this.COL_HIDDEN_GPSDATA=bn.length;
this.tableModel.setColumns(bn);
this.tableModel.setData(bp);
for(var bu=0;bu<bn.length;bu++){this.tableModel.setColumnSortable(bu,true);
}this.tableModel.sortByColumn(this.COL_DATE,false);
var br=new qx.ui.table.Table(this.tableModel);
this.table=br;
this.table.setStatusBarVisible(true);
br.set({width:900+this.countIN*bs+this.countOUT*bj,minWidth:900,height:200,decorator:null});
if(this.statisticWindow.supportsTableSelections){br.getSelectionModel().setSelectionMode(qx.ui.table.selection.Model.SINGLE_INTERVAL_SELECTION);
}else{br.getSelectionModel().setSelectionMode(qx.ui.table.selection.Model.MULTIPLE_INTERVAL_SELECTION);
}var bk=br.getSelectionModel();
bk.addListener(p,function(e){if(this.statisticWindow.supportsTableSelections){var bv=[];
bk.iterateSelection(function(bw){bv.push(this.tableModel.getValue(this.COL_HIDDEN_GPSDATA,bw));
},this);
this.info("changeSelection on HistoryTableView");

if(this.timeplotGroup.averageView!=null&&this.timeplotGroup.averageView!=B)this.timeplotGroup.averageView.calculateAverages(bv);
}},this);
br.addListener(z,this.onCellEvent,this);
var bo=br.getTableColumnModel();
br.setColumnWidth(this.COL_DATE,120);
br.setColumnWidth(this.COL_LATLONLINK,110);
br.setColumnWidth(this.COL_SPEED,55);
br.setColumnWidth(this.COL_COURSE,70);
br.setColumnWidth(this.COL_HEIGHT,65);
br.setColumnWidth(this.COL_SAT,40);
br.setColumnWidth(this.COL_VOLTAGE,50);
br.setColumnWidth(this.COL_ISCHARGED,55);
br.setColumnWidth(this.COL_ALARM,120);
br.setColumnWidth(this.COL_ADDRESS,200);

for(var bt=this.startIndexIN;bt<this.startIndexIN+this.countIN;bt++){br.setColumnWidth(bt,bs);
}
for(var bl=this.startIndexOUT;bl<this.startIndexOUT+this.countOUT;bl++){br.setColumnWidth(bl,bj);
}bo.setDataCellRenderer(this.COL_LATLONLINK,new qx.ui.table.cellrenderer.Html());
this.keypressListenerId=br.addListener(R,function(e){this.debug("Event keypress e="+e+" identifier="+e.getKeyIdentifier()+" isShiftPressed="+e.isShiftPressed());
var bz=e.getKeyIdentifier();

if(bz==W||bz==Y){var by=br.getFocusedRow();
var bA=this.tableModel.getData();
var bx=bA[by];
this.showOnMap(bx,null);
}},this);
return br;
},onCheckboxVisible:function(bB){if(bB){this.table.show();
var bC=this.timeplotGroup.filterView.getStartDate();
var bD=this.timeplotGroup.filterView.getEndDate();
this.loadDataFromCache(this.timeplotGroup.timeplotDataCacheInfo,bC,bD);
}else{this.table.exclude();
}},setVisible:function(bE){this.table.setVisibility(bE?f:bd);
},isVisible:function(){var bF=(this.table.getVisibility()==f);
return bF;
},_findRowNumber:function(bG){var bH=this.tableModel.getData();

for(var i=0,l=bH.length;i<l;i++){var bJ=bH[i];
var bI=bJ[this.COL_HIDDEN_GPSDATA];

if(bG==bI)return i;
}return -1;
},focusGpsDataRow:function(bK){var bL=true;
var bN=0;
var bM=this.tableModel.getData();
var bO=this._findRowNumber(bK);

if(bO!=-1)this.table.setFocusedCell(bN,bO,bL);
},onCellEvent:function(e){if(e.getCurrentTarget().classname==s){return ;
}var bR=this.tableModel.getData();
var bU=bR[e.getRow()];

if(e.isShiftPressed()||e.isRightPressed()){if(e.isRightPressed()||!this.statisticWindow.supportsTableSelections){var bQ=bU[this.COL_HIDDEN_GPSDATA];
var bP=bQ.dump().replace(/\n/g,H).replace(/\,/g,E);
this.trackGui.msgBox.infoMsgBox(bP,null,false);
}}else{var bT=e.getColumn();

if(bT==this.COL_LATLONLINK){var bQ=bU[this.COL_HIDDEN_GPSDATA];
var bS=this.getGoogleLink(bQ);
window.open(bS,V);
}this.showOnMap(bU,null);
}},showOnMap:function(bV,bW){var ca=bV[this.COL_HIDDEN_GPSDATA];
var bX=this.timeplotGroup.getSelectedDevice();
var bY=bX.getTrack(ca.getTrackName(null));
this.trackGui.watchee.getMapManager().showAndCenterLocation(bY,ca);
},lookupReverseGeocode:function(cb){var cc=K;
var cd=true;
var cf=this.watchee.xbAccess.getUrlBaseRandom();
var ce=org.xmlBlaster.util.createXmlHttpRequest(null);
ce.open(cc,cf,cd);
ce.setRequestHeader(J,A);
var cg=U+enc;
ce.setRequestHeader(u,cg.length);
try{ce.send(cg);
}catch(ch){throw new org.xmlBlaster.util.XmlBlasterException(Q,n,ba+cf,false);
}
if(cd==true){return null;
}else{return ce.responseText;
}},onShowGpsAddress:function(ci){this.isReverseGeocodeInStatistikChecked=ci;
this.showGpsAddress(0,false);
},showGpsAddress:function(cj,ck){if(!this.isReverseGeocodeInStatistikChecked){this.timeplotGroup.filterView.setAddressLabel(null,null);
return;
}var ct=this.tableModel.getData();

if(ct===undefined||ct==null||ct.length<=cj){this.timeplotGroup.filterView.setAddressLabel(null,w);
var cn=[];

for(var cp=0;cp<ct.length;cp++){var cv=ct[cp];
var cr=cv[this.COL_HIDDEN_GPSDATA];
var cu=false;
var cl=cr.getAddressCacheKey();
var cm=this.gpsLatLonAddressCacheHashtable.get(cl);

if(cm!=null&&cm.length>0){cr.setAddressStr(cm);
}cm=cr.getAddressStr(j,cu);

if(cm!=null&&cm.length!=0&&!cr.hasAddressStrFromDb()){this.gpsLatLonAddressCacheHashtable.put(cl,cr.getAddressStr());
cn.push(cr);
}}
if(cn.length!=0){ck=true;
this.trackGui.sendChangeLocationAddr(cn);
}return ;
}this.timeplotGroup.filterView.setAddressLabel(cj+o+ct.length,C);
var cv=ct[cj];
var cr=cv[this.COL_HIDDEN_GPSDATA];
var cl=cr.getAddressCacheKey();
var cm=this.gpsLatLonAddressCacheHashtable.get(cl);

if(cm!=null&&cm.length>0){cr.setAddressStr(cm);
}var co=cr.getAddressStr(j);

if(co!=null&&co.length>0){this.gpsLatLonAddressCacheHashtable.put(cl,cr.getAddressStr());
}this.tableModel.setValue(this.COL_ADDRESS,cj,co);
var cs=1;
var cq=5;

if(cj>0&&(cj%cq)==0){var cn=[];

for(var cp=cj-cq;cp>=0&&cp<cj;cp++){var cv=ct[cp];
var cr=cv[this.COL_HIDDEN_GPSDATA];
var cu=false;
cm=cr.getAddressStr(j,cu);

if(cm!=null&&cm.length!=0&&!cr.hasAddressStrFromDb()){cn.push(cr);
}}
if(cn.length!=0){ck=true;
this.trackGui.sendChangeLocationAddr(cn);
}}
if(ck&&cj>0&&(cj%cq)==0){cs=400;
}qx.event.Timer.once(function(){cj++;
this.showGpsAddress(cj,ck);
},this,cs);
},getGoogleLink:function(cw){var cx=cw.getGoogleMapsLink(12,cw.getTrackName(k)+N+cw.getAlarmTypeNotNull());
return cx;
},loadDataFromCacheAsync:function(cy,cz,cA){var cy=cy;
var cz=cz;
var cA=cA;
qx.event.Timer.once(function(){this.loadDataFromCache(cy,cz,cA);
},this,100);
},_loadChunk:function(cB,cC,cD,cE,cF){var cK=10;
var i=cE;
var cI=i+cK;
var cJ=(i==0);
var cQ=cJ?100:1;
var cR=this.timeplotGroup.getSelectedDevice();
this.timeplotGroup.setStatusLabelValue(this.trc(h,q,i,cB.gpsDataArr.length));

for(var l=cB.gpsDataArr.length;i<l;i++){var cP=cB.gpsDataArr[i];
var cO=cP.getUtcDateObj();

if(cC!=null&&cO.getTime()<cC.getTime()||cD!=null&&cO.getTime()>cD.getTime()){continue;
}var cG=[];
cG[this.COL_DATE]=cP.getLocalTsIsoStr();
cG[this.COL_LATLONLINK]=k;

if(cP.hasLatLon()){var cU=this.getGoogleLink(cP);
cG[this.COL_LATLONLINK]=X+cU+O+cP.latitudeDecimal(5)+G+cP.longitudeDecimal(5)+M;
}cG[this.COL_SPEED]=cP.getSpeedKmhInteger();
cG[this.COL_COURSE]=cP.getCourseInteger();
cG[this.COL_HEIGHT]=cP.getHeight(0);
cG[this.COL_SAT]=cP.getInfo(r,k);
cG[this.COL_VOLTAGE]=cP.getInfo(a,k);
cG[this.COL_ISCHARGED]=cP.getInfo(be,k);
cG[this.COL_ALARM]=cP.getAlarmTypeNotNull();
cG[this.COL_ADDRESS]=cP.getAddressStr(v,false,k);
cG[this.COL_HIDDEN_GPSDATA]=cP;
var cM=1;

for(var cT=this.startIndexIN;cT<this.startIndexIN+this.countIN;cT++){if((cM==1||cM==2)&&cP.isInputAnalog(cM)){var cN=cR.getIOAnalogComputedResultRounded(cM,0,cP);
cG[cT]=cN;
}else{var cH=cP.getInputStatus(cM);
cG[cT]=cH==null?k:(cH==true?d:g);
}cM++;
}var cS=1;

for(var cL=this.startIndexOUT;cL<this.startIndexOUT+this.countOUT;cL++){var cH=cP.getOutputStatus(cS);
cG[cL]=cH==null?k:(cH==true?d:g);
cS++;
}cF.push(cG);

if(i>=cI)break;
}
if(cJ||i>=cB.gpsDataArr.length){this.tableModel.setData(cF);
}
if(i>=cB.gpsDataArr.length){this.timeplotGroup.setStatusLabelValue(this.trc(h,T,cF.length));
return;
}qx.event.Timer.once(function(){this._loadChunk(cB,cC,cD,(i+1),cF);
},this,cQ);
},loadDataFromCache:function(cV,cW,cX){var cW=cW||null;
var cX=cX||null;

if(cV==null)return;

if(!this.isVisible()){return;
}var cY=[];
this._loadChunk(cV,cW,cX,0,cY);
this.onShowGpsAddress(this.isReverseGeocodeInStatistikChecked);
},clear:function(da){try{this.countIN=0;
this.countOUT=0;

if(this.tableModel!=null){var db=[];
this.tableModel.setData(db);

if(da){delete this.tableModel;
this.tableModel=null;
}}
if(da&&this.table!=null){if(this.keypressListenerId!=null){this.table.removeListenerById(this.keypressListenerId);
this.keypressListenerId=null;
}this.table.destroy();
delete this.table;
this.table=null;
}}catch(dc){this.error("HistoryTableView.js dispose failed: "+dc);
}}},destruct:function(){this.destroyPopup();
}});
})();
(function(){var c="qx.event.type.Data",b="qx.event.type.Event",a="qx.ui.table.ITableModel";
qx.Interface.define(a,{events:{"dataChanged":c,"metaDataChanged":b,"sorted":c},members:{getRowCount:function(){},getRowData:function(d){},getColumnCount:function(){},getColumnId:function(e){},getColumnIndexById:function(f){},getColumnName:function(g){},isColumnEditable:function(h){},isColumnSortable:function(i){},sortByColumn:function(j,k){},getSortColumnIndex:function(){},isSortAscending:function(){},prefetchRows:function(l,m){},getValue:function(n,o){},getValueById:function(p,q){},setValue:function(r,s,t){},setValueById:function(u,v,w){}}});
})();
(function(){var e="metaDataChanged",d="qx.event.type.Data",c="qx.event.type.Event",b="abstract",a="qx.ui.table.model.Abstract";
qx.Class.define(a,{type:b,extend:qx.core.Object,implement:qx.ui.table.ITableModel,events:{"dataChanged":d,"metaDataChanged":c,"sorted":d},construct:function(){qx.core.Object.call(this);
this.__qy=[];
this.__qz=[];
this.__qA={};
},members:{__qy:null,__qz:null,__qA:null,__qB:null,init:function(f){},getRowCount:function(){throw new Error("getRowCount is abstract");
},getRowData:function(g){return null;
},isColumnEditable:function(h){return false;
},isColumnSortable:function(j){return false;
},sortByColumn:function(k,l){},getSortColumnIndex:function(){return -1;
},isSortAscending:function(){return true;
},prefetchRows:function(m,n){},getValue:function(o,p){throw new Error("getValue is abstract");
},getValueById:function(q,r){return this.getValue(this.getColumnIndexById(q),r);
},setValue:function(s,t,u){throw new Error("setValue is abstract");
},setValueById:function(v,w,x){this.setValue(this.getColumnIndexById(v),w,x);
},getColumnCount:function(){return this.__qy.length;
},getColumnIndexById:function(y){return this.__qA[y];
},getColumnId:function(z){return this.__qy[z];
},getColumnName:function(A){return this.__qz[A];
},setColumnIds:function(B){this.__qy=B;
this.__qA={};

for(var i=0;i<B.length;i++){this.__qA[B[i]]=i;
}this.__qz=new Array(B.length);
if(!this.__qB){this.fireEvent(e);
}},setColumnNamesByIndex:function(C){if(this.__qy.length!=C.length){throw new Error("this.__columnIdArr and columnNameArr have different length: "+this.__qy.length+" != "+C.length);
}this.__qz=C;
this.fireEvent(e);
},setColumnNamesById:function(D){this.__qz=new Array(this.__qy.length);

for(var i=0;i<this.__qy.length;++i){this.__qz[i]=D[this.__qy[i]];
}},setColumns:function(E,F){var G=this.__qy.length==0||F;

if(F==null){if(this.__qy.length==0){F=E;
}else{F=this.__qy;
}}
if(F.length!=E.length){throw new Error("columnIdArr and columnNameArr have different length: "+F.length+" != "+E.length);
}
if(G){this.__qB=true;
this.setColumnIds(F);
this.__qB=false;
}this.setColumnNamesByIndex(E);
}},destruct:function(){this.__qy=this.__qz=this.__qA=null;
}});
})();
(function(){var e="dataChanged",d="metaDataChanged",c="qx.ui.table.model.Simple",b="Boolean",a="sorted";
qx.Class.define(c,{extend:qx.ui.table.model.Abstract,construct:function(){qx.ui.table.model.Abstract.call(this);
this.__qC=[];
this.__qD=-1;
this.__qE=[];
this.__qF=null;
},properties:{caseSensitiveSorting:{check:b,init:true}},statics:{_defaultSortComparatorAscending:function(f,g){var h=f[arguments.callee.columnIndex];
var k=g[arguments.callee.columnIndex];

if(qx.lang.Type.isNumber(h)&&qx.lang.Type.isNumber(k)){var l=isNaN(h)?isNaN(k)?0:1:isNaN(k)?-1:null;

if(l!=null){return l;
}}return (h>k)?1:((h==k)?0:-1);
},_defaultSortComparatorInsensitiveAscending:function(m,n){var o=(m[arguments.callee.columnIndex].toLowerCase?m[arguments.callee.columnIndex].toLowerCase():m[arguments.callee.columnIndex]);
var p=(n[arguments.callee.columnIndex].toLowerCase?n[arguments.callee.columnIndex].toLowerCase():n[arguments.callee.columnIndex]);

if(qx.lang.Type.isNumber(o)&&qx.lang.Type.isNumber(p)){var q=isNaN(o)?isNaN(p)?0:1:isNaN(p)?-1:null;

if(q!=null){return q;
}}return (o>p)?1:((o==p)?0:-1);
},_defaultSortComparatorDescending:function(r,s){var t=r[arguments.callee.columnIndex];
var u=s[arguments.callee.columnIndex];

if(qx.lang.Type.isNumber(t)&&qx.lang.Type.isNumber(u)){var v=isNaN(t)?isNaN(u)?0:1:isNaN(u)?-1:null;

if(v!=null){return v;
}}return (t<u)?1:((t==u)?0:-1);
},_defaultSortComparatorInsensitiveDescending:function(w,x){var y=(w[arguments.callee.columnIndex].toLowerCase?w[arguments.callee.columnIndex].toLowerCase():w[arguments.callee.columnIndex]);
var z=(x[arguments.callee.columnIndex].toLowerCase?x[arguments.callee.columnIndex].toLowerCase():x[arguments.callee.columnIndex]);

if(qx.lang.Type.isNumber(y)&&qx.lang.Type.isNumber(z)){var A=isNaN(y)?isNaN(z)?0:1:isNaN(z)?-1:null;

if(A!=null){return A;
}}return (y<z)?1:((y==z)?0:-1);
}},members:{__qC:null,__qF:null,__qG:null,__qE:null,__qD:null,__qH:null,getRowData:function(B){var C=this.__qC[B];

if(C==null||C.originalData==null){return C;
}else{return C.originalData;
}},getRowDataAsMap:function(D){var F=this.__qC[D];

if(F!=null){var E={};
for(var G=0;G<this.getColumnCount();G++){E[this.getColumnId(G)]=F[G];
}
if(F.originalData!=null){for(var H in F.originalData){if(E[H]==undefined){E[H]=F.originalData[H];
}}}return E;
}return (F&&F.originalData)?F.originalData:null;
},getDataAsMapArray:function(){var J=this.getRowCount();
var I=[];

for(var i=0;i<J;i++){I.push(this.getRowDataAsMap(i));
}return I;
},setEditable:function(K){this.__qF=[];

for(var L=0;L<this.getColumnCount();L++){this.__qF[L]=K;
}this.fireEvent(d);
},setColumnEditable:function(M,N){if(N!=this.isColumnEditable(M)){if(this.__qF==null){this.__qF=[];
}this.__qF[M]=N;
this.fireEvent(d);
}},isColumnEditable:function(O){return this.__qF?(this.__qF[O]==true):false;
},setColumnSortable:function(P,Q){if(Q!=this.isColumnSortable(P)){if(this.__qG==null){this.__qG=[];
}this.__qG[P]=Q;
this.fireEvent(d);
}},isColumnSortable:function(R){return (this.__qG?(this.__qG[R]!==false):true);
},sortByColumn:function(S,T){var W;
var V=this.__qE[S];

if(V){W=(T?V.ascending:V.descending);
}else{if(this.getCaseSensitiveSorting()){W=(T?qx.ui.table.model.Simple._defaultSortComparatorAscending:qx.ui.table.model.Simple._defaultSortComparatorDescending);
}else{W=(T?qx.ui.table.model.Simple._defaultSortComparatorInsensitiveAscending:qx.ui.table.model.Simple._defaultSortComparatorInsensitiveDescending);
}}W.columnIndex=S;
this.__qC.sort(W);
this.__qD=S;
this.__qH=T;
var U={columnIndex:S,ascending:T};
this.fireDataEvent(a,U);
this.fireEvent(d);
},setSortMethods:function(X,Y){var ba;

if(qx.lang.Type.isFunction(Y)){ba={ascending:Y,descending:function(bb,bc){return Y(bc,bb);
}};
}else{ba=Y;
}this.__qE[X]=ba;
},getSortMethods:function(bd){return this.__qE[bd];
},clearSorting:function(){if(this.__qD!=-1){this.__qD=-1;
this.__qH=true;
this.fireEvent(d);
}},getSortColumnIndex:function(){return this.__qD;
},_setSortColumnIndex:function(be){this.__qD=be;
},isSortAscending:function(){return this.__qH;
},_setSortAscending:function(bf){this.__qH=bf;
},getRowCount:function(){return this.__qC.length;
},getValue:function(bg,bh){if(bh<0||bh>=this.__qC.length){throw new Error("this.__rowArr out of bounds: "+bh+" (0.."+this.__qC.length+")");
}return this.__qC[bh][bg];
},setValue:function(bi,bj,bk){if(this.__qC[bj][bi]!=bk){this.__qC[bj][bi]=bk;
if(this.hasListener(e)){var bl={firstRow:bj,lastRow:bj,firstColumn:bi,lastColumn:bi};
this.fireDataEvent(e,bl);
}
if(bi==this.__qD){this.clearSorting();
}}},setData:function(bm,bn){this.__qC=bm;
if(this.hasListener(e)){var bo={firstRow:0,lastRow:bm.length-1,firstColumn:0,lastColumn:this.getColumnCount()-1};
this.fireDataEvent(e,bo);
}
if(bn!==false){this.clearSorting();
}},getData:function(){return this.__qC;
},setDataAsMapArray:function(bp,bq,br){this.setData(this._mapArray2RowArr(bp,bq),br);
},addRows:function(bs,bt,bu){if(bt==null){bt=this.__qC.length;
}bs.splice(0,0,bt,0);
Array.prototype.splice.apply(this.__qC,bs);
var bv={firstRow:bt,lastRow:this.__qC.length-1,firstColumn:0,lastColumn:this.getColumnCount()-1};
this.fireDataEvent(e,bv);

if(bu!==false){this.clearSorting();
}},addRowsAsMapArray:function(bw,bx,by,bz){this.addRows(this._mapArray2RowArr(bw,by),bx,bz);
},setRows:function(bA,bB,bC){if(bB==null){bB=0;
}bA.splice(0,0,bB,bA.length);
Array.prototype.splice.apply(this.__qC,bA);
var bD={firstRow:bB,lastRow:this.__qC.length-1,firstColumn:0,lastColumn:this.getColumnCount()-1};
this.fireDataEvent(e,bD);

if(bC!==false){this.clearSorting();
}},setRowsAsMapArray:function(bE,bF,bG,bH){this.setRows(this._mapArray2RowArr(bE,bG),bF,bH);
},removeRows:function(bI,bJ,bK){this.__qC.splice(bI,bJ);
var bL={firstRow:bI,lastRow:this.__qC.length-1,firstColumn:0,lastColumn:this.getColumnCount()-1,removeStart:bI,removeCount:bJ};
this.fireDataEvent(e,bL);

if(bK!==false){this.clearSorting();
}},_mapArray2RowArr:function(bM,bN){var bR=bM.length;
var bO=this.getColumnCount();
var bQ=new Array(bR);
var bP;

for(var i=0;i<bR;++i){bP=[];

if(bN){bP.originalData=bM[i];
}
for(var j=0;j<bO;++j){bP[j]=bM[i][this.getColumnId(j)];
}bQ[i]=bP;
}return bQ;
}},destruct:function(){this.__qC=this.__qF=this.__qE=this.__qG=null;
}});
})();
(function(){var q="Boolean",p="column-button",o="Function",n="qx.event.type.Data",m="statusbar",k="qx.ui.table.pane.CellEvent",h="function",g="PageUp",f="dataChanged",e="changeLocale",bH="changeSelection",bG="appear",bF="qx.dynlocale",bE='"',bD="__qR",bC="Enter",bB="metaDataChanged",bA="_applyStatusBarVisible",bz="columnVisibilityMenuCreateStart",by="blur",y="qx.ui.table.Table",z="columnVisibilityMenuCreateEnd",v="changeVisible",w="_applyResetSelectionOnHeaderClick",t="_applyMetaColumnCounts",u="focus",r="changeDataRowRenderer",s="changeHeaderCellHeight",G="Escape",H="A",ba="changeSelectionModel",V="Left",bi="Down",bd="Integer",bu="_applyHeaderCellHeight",bo="visibilityChanged",O="qx.ui.table.ITableModel",bx="orderChanged",bw="_applySelectionModel",bv="menu-button",M="menu",R="_applyAdditionalStatusBarText",T="_applyFocusCellOnMouseMove",X="table",bb="_applyColumnVisibilityButtonVisible",be="changeTableModel",bk="qx.event.type.Event",bq="__qJ",A="tableWidthChanged",B="_applyHeaderCellsVisible",Q="Object",bh="_applyShowCellFocusIndicator",bg="resize",bf="verticalScrollBarChanged",bm="changeScrollY",bl="_applyTableModel",bc="End",bj="_applyKeepFirstVisibleRowComplete",a="widthChanged",bp="one of one row",C="Home",D="__qI",W="_applyRowHeight",b="F2",d="Up",L="%1 rows",E="qx.ui.table.selection.Model",F="one row",J="PageDown",Y="%1 of %2 rows",bs="__qP",br="keypress",S="changeRowHeight",bt="Number",N="__jg",bn="header",I="_applyContextMenuFromDataCellsOnly",K="qx.ui.table.IRowRenderer",c="__qQ",U="Right",P="Space";
qx.Class.define(y,{extend:qx.ui.core.Widget,construct:function(bI,bJ){qx.ui.core.Widget.call(this);
if(!bJ){bJ={};
}
if(bJ.initiallyHiddenColumns){this.setInitiallyHiddenColumns(bJ.initiallyHiddenColumns);
}
if(bJ.selectionManager){this.setNewSelectionManager(bJ.selectionManager);
}
if(bJ.selectionModel){this.setNewSelectionModel(bJ.selectionModel);
}
if(bJ.tableColumnModel){this.setNewTableColumnModel(bJ.tableColumnModel);
}
if(bJ.tablePane){this.setNewTablePane(bJ.tablePane);
}
if(bJ.tablePaneHeader){this.setNewTablePaneHeader(bJ.tablePaneHeader);
}
if(bJ.tablePaneScroller){this.setNewTablePaneScroller(bJ.tablePaneScroller);
}
if(bJ.tablePaneModel){this.setNewTablePaneModel(bJ.tablePaneModel);
}
if(bJ.columnMenu){this.setNewColumnMenu(bJ.columnMenu);
}this._setLayout(new qx.ui.layout.VBox());
this.__qI=new qx.ui.container.Composite(new qx.ui.layout.HBox());
this._add(this.__qI,{flex:1});
this.setDataRowRenderer(new qx.ui.table.rowrenderer.Default(this));
this.__qJ=this.getNewSelectionManager()(this);
this.setSelectionModel(this.getNewSelectionModel()(this));
this.setTableModel(bI||this.getEmptyTableModel());
this.setMetaColumnCounts([-1]);
this.setTabIndex(1);
this.addListener(br,this._onKeyPress);
this.addListener(u,this._onFocusChanged);
this.addListener(by,this._onFocusChanged);
var bK=new qx.ui.core.Widget().set({height:0});
this._add(bK);
bK.addListener(bg,this._onResize,this);
this.__qK=null;
this.__qL=null;
if(qx.core.Environment.get(bF)){qx.locale.Manager.getInstance().addListener(e,this._onChangeLocale,this);
}this.initStatusBarVisible();
bI=this.getTableModel();

if(bI.init&&typeof (bI.init)==h){bI.init(this);
}},events:{"columnVisibilityMenuCreateStart":n,"columnVisibilityMenuCreateEnd":n,"tableWidthChanged":bk,"verticalScrollBarChanged":n,"cellClick":k,"cellDblclick":k,"cellContextmenu":k,"dataEdited":n},statics:{__qM:{cellClick:1,cellDblclick:1,cellContextmenu:1}},properties:{appearance:{refine:true,init:X},focusable:{refine:true,init:true},minWidth:{refine:true,init:50},initiallyHiddenColumns:{init:null},selectable:{refine:true,init:false},selectionModel:{check:E,apply:bw,event:ba},tableModel:{check:O,apply:bl,event:be},rowHeight:{check:bt,init:20,apply:W,event:S,themeable:true},forceLineHeight:{check:q,init:true},headerCellsVisible:{check:q,init:true,apply:B,themeable:true},headerCellHeight:{check:bd,init:16,apply:bu,event:s,nullable:true,themeable:true},statusBarVisible:{check:q,init:true,apply:bA},additionalStatusBarText:{nullable:true,init:null,apply:R},columnVisibilityButtonVisible:{check:q,init:true,apply:bb,themeable:true},metaColumnCounts:{check:Q,apply:t},focusCellOnMouseMove:{check:q,init:false,apply:T},rowFocusChangeModifiesSelection:{check:q,init:true},showCellFocusIndicator:{check:q,init:true,apply:bh},contextMenuFromDataCellsOnly:{check:q,init:true,apply:I},keepFirstVisibleRowComplete:{check:q,init:true,apply:bj},alwaysUpdateCells:{check:q,init:false},resetSelectionOnHeaderClick:{check:q,init:true,apply:w},dataRowRenderer:{check:K,init:null,nullable:true,event:r},modalCellEditorPreOpenFunction:{check:o,init:null,nullable:true},newColumnMenu:{check:o,init:function(){return new qx.ui.table.columnmenu.Button();
}},newSelectionManager:{check:o,init:function(bL){return new qx.ui.table.selection.Manager(bL);
}},newSelectionModel:{check:o,init:function(bM){return new qx.ui.table.selection.Model(bM);
}},newTableColumnModel:{check:o,init:function(bN){return new qx.ui.table.columnmodel.Basic(bN);
}},newTablePane:{check:o,init:function(bO){return new qx.ui.table.pane.Pane(bO);
}},newTablePaneHeader:{check:o,init:function(bP){return new qx.ui.table.pane.Header(bP);
}},newTablePaneScroller:{check:o,init:function(bQ){return new qx.ui.table.pane.Scroller(bQ);
}},newTablePaneModel:{check:o,init:function(bR){return new qx.ui.table.pane.Model(bR);
}}},members:{__qK:null,__qL:null,__qI:null,__qJ:null,__qN:null,__qO:null,__qB:null,__qP:null,__qQ:null,__qR:null,__qS:null,__jg:null,_createChildControlImpl:function(bS,bT){var bU;

switch(bS){case m:bU=new qx.ui.basic.Label();
bU.set({allowGrowX:true});
this._add(bU);
break;
case p:bU=this.getNewColumnMenu()();
bU.set({focusable:false});
var bV=bU.factory(M,{table:this});
bV.addListener(bG,this._initColumnMenu,this);
break;
}return bU||qx.ui.core.Widget.prototype._createChildControlImpl.call(this,bS);
},_applySelectionModel:function(bW,bX){this.__qJ.setSelectionModel(bW);

if(bX!=null){bX.removeListener(bH,this._onSelectionChanged,this);
}bW.addListener(bH,this._onSelectionChanged,this);
},_applyRowHeight:function(bY,ca){var cb=this._getPaneScrollerArr();

for(var i=0;i<cb.length;i++){cb[i].updateVerScrollBarMaximum();
}},_applyHeaderCellsVisible:function(cc,cd){var ce=this._getPaneScrollerArr();

for(var i=0;i<ce.length;i++){ce[i]._excludeChildControl(bn);
}},_applyHeaderCellHeight:function(cf,cg){var ch=this._getPaneScrollerArr();

for(var i=0;i<ch.length;i++){ch[i].getHeader().setHeight(cf);
}},getEmptyTableModel:function(){if(!this.__qR){this.__qR=new qx.ui.table.model.Simple();
this.__qR.setColumns([]);
this.__qR.setData([]);
}return this.__qR;
},_applyTableModel:function(ci,cj){this.getTableColumnModel().init(ci.getColumnCount(),this);

if(cj!=null){cj.removeListener(bB,this._onTableModelMetaDataChanged,this);
cj.removeListener(f,this._onTableModelDataChanged,this);
}ci.addListener(bB,this._onTableModelMetaDataChanged,this);
ci.addListener(f,this._onTableModelDataChanged,this);
this._updateStatusBar();
this._updateTableData(0,ci.getRowCount(),0,ci.getColumnCount());
this._onTableModelMetaDataChanged();
if(cj&&ci.init&&typeof (ci.init)==h){ci.init(this);
}},getTableColumnModel:function(){if(!this.__qQ){var cm=this.__qQ=this.getNewTableColumnModel()(this);
cm.addListener(bo,this._onColVisibilityChanged,this);
cm.addListener(a,this._onColWidthChanged,this);
cm.addListener(bx,this._onColOrderChanged,this);
var cl=this.getTableModel();
cm.init(cl.getColumnCount(),this);
var ck=this._getPaneScrollerArr();

for(var i=0;i<ck.length;i++){var cn=ck[i];
var co=cn.getTablePaneModel();
co.setTableColumnModel(cm);
}}return this.__qQ;
},_applyStatusBarVisible:function(cp,cq){if(cp){this._showChildControl(m);
}else{this._excludeChildControl(m);
}
if(cp){this._updateStatusBar();
}},_applyAdditionalStatusBarText:function(cr,cs){this.__qN=cr;
this._updateStatusBar();
},_applyColumnVisibilityButtonVisible:function(ct,cu){if(ct){this._showChildControl(p);
}else{this._excludeChildControl(p);
}},_applyMetaColumnCounts:function(cv,cw){var cD=cv;
var cx=this._getPaneScrollerArr();
var cB={};

if(cv>cw){var cF=qx.event.Registration.getManager(cx[0]);

for(var cG in qx.ui.table.Table.__qM){cB[cG]={};
cB[cG].capture=cF.getListeners(cx[0],cG,true);
cB[cG].bubble=cF.getListeners(cx[0],cG,false);
}}this._cleanUpMetaColumns(cD.length);
var cC=0;

for(var i=0;i<cx.length;i++){var cH=cx[i];
var cE=cH.getTablePaneModel();
cE.setFirstColumnX(cC);
cE.setMaxColumnCount(cD[i]);
cC+=cD[i];
}if(cD.length>cx.length){var cA=this.getTableColumnModel();

for(var i=cx.length;i<cD.length;i++){var cE=this.getNewTablePaneModel()(cA);
cE.setFirstColumnX(cC);
cE.setMaxColumnCount(cD[i]);
cC+=cD[i];
var cH=this.getNewTablePaneScroller()(this);
cH.setTablePaneModel(cE);
cH.addListener(bm,this._onScrollY,this);
for(cG in qx.ui.table.Table.__qM){if(!cB[cG]){break;
}
if(cB[cG].capture&&cB[cG].capture.length>0){var cy=cB[cG].capture;

for(var j=0;j<cy.length;j++){var cz=cy[j].context;

if(!cz){cz=this;
}else if(cz==cx[0]){cz=cH;
}cH.addListener(cG,cy[j].handler,cz,true);
}}
if(cB[cG].bubble&&cB[cG].bubble.length>0){var cJ=cB[cG].bubble;

for(var j=0;j<cJ.length;j++){var cz=cJ[j].context;

if(!cz){cz=this;
}else if(cz==cx[0]){cz=cH;
}cH.addListener(cG,cJ[j].handler,cz,false);
}}}var cI=(i==cD.length-1)?1:0;
this.__qI.add(cH,{flex:cI});
cx=this._getPaneScrollerArr();
}}for(var i=0;i<cx.length;i++){var cH=cx[i];
var cK=(i==(cx.length-1));
cH.getHeader().setHeight(this.getHeaderCellHeight());
cH.setTopRightWidget(cK?this.getChildControl(p):null);
}
if(!this.isColumnVisibilityButtonVisible()){this._excludeChildControl(p);
}this._updateScrollerWidths();
this._updateScrollBarVisibility();
},_applyFocusCellOnMouseMove:function(cL,cM){var cN=this._getPaneScrollerArr();

for(var i=0;i<cN.length;i++){cN[i].setFocusCellOnMouseMove(cL);
}},_applyShowCellFocusIndicator:function(cO,cP){var cQ=this._getPaneScrollerArr();

for(var i=0;i<cQ.length;i++){cQ[i].setShowCellFocusIndicator(cO);
}},_applyContextMenuFromDataCellsOnly:function(cR,cS){var cT=this._getPaneScrollerArr();

for(var i=0;i<cT.length;i++){cT[i].setContextMenuFromDataCellsOnly(cR);
}},_applyKeepFirstVisibleRowComplete:function(cU,cV){var cW=this._getPaneScrollerArr();

for(var i=0;i<cW.length;i++){cW[i].onKeepFirstVisibleRowCompleteChanged();
}},_applyResetSelectionOnHeaderClick:function(cX,cY){var da=this._getPaneScrollerArr();

for(var i=0;i<da.length;i++){da[i].setResetSelectionOnHeaderClick(cX);
}},getSelectionManager:function(){return this.__qJ;
},_getPaneScrollerArr:function(){return this.__qI.getChildren();
},getPaneScroller:function(db){return this._getPaneScrollerArr()[db];
},_cleanUpMetaColumns:function(dc){var dd=this._getPaneScrollerArr();

if(dd!=null){for(var i=dd.length-1;i>=dc;i--){dd[i].destroy();
}}},_onChangeLocale:function(de){this.updateContent();
this._updateStatusBar();
},_onSelectionChanged:function(df){var dg=this._getPaneScrollerArr();

for(var i=0;i<dg.length;i++){dg[i].onSelectionChanged();
}this._updateStatusBar();
},_onTableModelMetaDataChanged:function(dh){var di=this._getPaneScrollerArr();

for(var i=0;i<di.length;i++){di[i].onTableModelMetaDataChanged();
}this._updateStatusBar();
},_onTableModelDataChanged:function(dj){var dk=dj.getData();
this._updateTableData(dk.firstRow,dk.lastRow,dk.firstColumn,dk.lastColumn,dk.removeStart,dk.removeCount);
},_updateTableData:function(dl,dm,dn,dp,dq,dr){var ds=this._getPaneScrollerArr();
if(dr){this.getSelectionModel().removeSelectionInterval(dq,dq+dr);
if(this.__qL>=dq&&this.__qL<(dq+dr)){this.setFocusedCell();
}}
for(var i=0;i<ds.length;i++){ds[i].onTableModelDataChanged(dl,dm,dn,dp);
}var dt=this.getTableModel().getRowCount();

if(dt!=this.__qO){this.__qO=dt;
this._updateScrollBarVisibility();
this._updateStatusBar();
}},_onScrollY:function(du){if(!this.__qB){this.__qB=true;
var dv=this._getPaneScrollerArr();

for(var i=0;i<dv.length;i++){dv[i].setScrollY(du.getData());
}this.__qB=false;
}},_onKeyPress:function(dw){if(!this.getEnabled()){return;
}var dD=this.__qL;
var dA=true;
var dE=dw.getKeyIdentifier();

if(this.isEditing()){if(dw.getModifiers()==0){switch(dE){case bC:this.stopEditing();
var dD=this.__qL;
this.moveFocusedCell(0,1);

if(this.__qL!=dD){dA=this.startEditing();
}break;
case G:this.cancelEditing();
this.focus();
break;
default:dA=false;
break;
}}}else{if(dw.isCtrlPressed()){dA=true;

switch(dE){case H:var dB=this.getTableModel().getRowCount();

if(dB>0){this.getSelectionModel().setSelectionInterval(0,dB-1);
}break;
default:dA=false;
break;
}}else{switch(dE){case P:this.__qJ.handleSelectKeyDown(this.__qL,dw);
break;
case b:case bC:this.startEditing();
dA=true;
break;
case C:this.setFocusedCell(this.__qK,0,true);
break;
case bc:var dB=this.getTableModel().getRowCount();
this.setFocusedCell(this.__qK,dB-1,true);
break;
case V:this.moveFocusedCell(-1,0);
break;
case U:this.moveFocusedCell(1,0);
break;
case d:this.moveFocusedCell(0,-1);
break;
case bi:this.moveFocusedCell(0,1);
break;
case g:case J:var dz=this.getPaneScroller(0);
var dC=dz.getTablePane();
var dy=this.getRowHeight();
var dx=(dE==g)?-1:1;
dB=dC.getVisibleRowCount()-1;
dz.setScrollY(dz.getScrollY()+dx*dB*dy);
this.moveFocusedCell(0,dx*dB);
break;
default:dA=false;
}}}
if(dD!=this.__qL&&this.getRowFocusChangeModifiesSelection()){this.__qJ.handleMoveKeyDown(this.__qL,dw);
}
if(dA){dw.preventDefault();
dw.stopPropagation();
}},_onFocusChanged:function(dF){var dG=this._getPaneScrollerArr();

for(var i=0;i<dG.length;i++){dG[i].onFocusChanged();
}},_onColVisibilityChanged:function(dH){var dI=this._getPaneScrollerArr();

for(var i=0;i<dI.length;i++){dI[i].onColVisibilityChanged();
}var dJ=dH.getData();

if(this.__qP!=null&&dJ.col!=null&&dJ.visible!=null){this.__qP[dJ.col].setVisible(dJ.visible);
}this._updateScrollerWidths();
this._updateScrollBarVisibility();
},_onColWidthChanged:function(dK){var dL=this._getPaneScrollerArr();

for(var i=0;i<dL.length;i++){var dM=dK.getData();
dL[i].setColumnWidth(dM.col,dM.newWidth);
}this._updateScrollerWidths();
this._updateScrollBarVisibility();
},_onColOrderChanged:function(dN){var dO=this._getPaneScrollerArr();

for(var i=0;i<dO.length;i++){dO[i].onColOrderChanged();
}this._updateScrollerWidths();
this._updateScrollBarVisibility();
},getTablePaneScrollerAtPageX:function(dP){var dQ=this._getMetaColumnAtPageX(dP);
return (dQ!=-1)?this.getPaneScroller(dQ):null;
},setFocusedCell:function(dR,dS,dT){if(!this.isEditing()&&(dR!=this.__qK||dS!=this.__qL)){if(dR===null){dR=0;
}this.__qK=dR;
this.__qL=dS;
var dU=this._getPaneScrollerArr();

for(var i=0;i<dU.length;i++){dU[i].setFocusedCell(dR,dS);
}
if(dR!==null&&dT){this.scrollCellVisible(dR,dS);
}}},resetSelection:function(){this.getSelectionModel().resetSelection();
},resetCellFocus:function(){this.setFocusedCell(null,null,false);
},getFocusedColumn:function(){return this.__qK;
},getFocusedRow:function(){return this.__qL;
},highlightFocusedRow:function(dV){this.getDataRowRenderer().setHighlightFocusRow(dV);
},clearFocusedRowHighlight:function(dW){if(dW){var dY=dW.getRelatedTarget();

if(dY instanceof qx.ui.table.pane.Pane||dY instanceof qx.ui.table.pane.FocusIndicator){return;
}}this.resetCellFocus();
var dX=this._getPaneScrollerArr();

for(var i=0;i<dX.length;i++){dX[i].onFocusChanged();
}},moveFocusedCell:function(ea,eb){var ef=this.__qK;
var eg=this.__qL;
if(ef==null||eg==null){return;
}
if(ea!=0){var ee=this.getTableColumnModel();
var x=ee.getVisibleX(ef);
var ed=ee.getVisibleColumnCount();
x=qx.lang.Number.limit(x+ea,0,ed-1);
ef=ee.getVisibleColumnAtX(x);
}
if(eb!=0){var ec=this.getTableModel();
eg=qx.lang.Number.limit(eg+eb,0,ec.getRowCount()-1);
}this.setFocusedCell(ef,eg,true);
},scrollCellVisible:function(eh,ei){var ej=this.getContentElement().getDomElement();
if(!ej){this.addListenerOnce(bG,function(){this.scrollCellVisible(eh,ei);
},this);
}var ek=this.getTableColumnModel();
var x=ek.getVisibleX(eh);
var el=this._getMetaColumnAtColumnX(x);

if(el!=-1){this.getPaneScroller(el).scrollCellVisible(eh,ei);
}},isEditing:function(){if(this.__qK!=null){var x=this.getTableColumnModel().getVisibleX(this.__qK);
var em=this._getMetaColumnAtColumnX(x);
return this.getPaneScroller(em).isEditing();
}return false;
},startEditing:function(){if(this.__qK!=null){var x=this.getTableColumnModel().getVisibleX(this.__qK);
var eo=this._getMetaColumnAtColumnX(x);
var en=this.getPaneScroller(eo).startEditing();
return en;
}return false;
},stopEditing:function(){if(this.__qK!=null){var x=this.getTableColumnModel().getVisibleX(this.__qK);
var ep=this._getMetaColumnAtColumnX(x);
this.getPaneScroller(ep).stopEditing();
}},cancelEditing:function(){if(this.__qK!=null){var x=this.getTableColumnModel().getVisibleX(this.__qK);
var eq=this._getMetaColumnAtColumnX(x);
this.getPaneScroller(eq).cancelEditing();
}},updateContent:function(){var er=this._getPaneScrollerArr();

for(var i=0;i<er.length;i++){er[i].getTablePane().updateContent(true);
}},blockHeaderElements:function(){var es=this._getPaneScrollerArr();

for(var i=0;i<es.length;i++){es[i].getHeader().getBlocker().blockContent(20);
}this.getChildControl(p).getBlocker().blockContent(20);
},unblockHeaderElements:function(){var et=this._getPaneScrollerArr();

for(var i=0;i<et.length;i++){et[i].getHeader().getBlocker().unblockContent();
}this.getChildControl(p).getBlocker().unblockContent();
},_getMetaColumnAtPageX:function(eu){var ev=this._getPaneScrollerArr();

for(var i=0;i<ev.length;i++){var ew=ev[i].getContainerLocation();

if(eu>=ew.left&&eu<=ew.right){return i;
}}return -1;
},_getMetaColumnAtColumnX:function(ex){var ez=this.getMetaColumnCounts();
var eA=0;

for(var i=0;i<ez.length;i++){var ey=ez[i];
eA+=ey;

if(ey==-1||ex<eA){return i;
}}return -1;
},_updateStatusBar:function(){var eB=this.getTableModel();

if(this.getStatusBarVisible()){var eC=this.getSelectionModel().getSelectedCount();
var eE=eB.getRowCount();
var eD;

if(eE>=0){if(eC==0){eD=this.trn(F,L,eE,eE);
}else{eD=this.trn(bp,Y,eE,eC,eE);
}}
if(this.__qN){if(eD){eD+=this.__qN;
}else{eD=this.__qN;
}}
if(eD){this.getChildControl(m).setValue(eD);
}}},_updateScrollerWidths:function(){var eF=this._getPaneScrollerArr();

for(var i=0;i<eF.length;i++){var eH=(i==(eF.length-1));
var eI=eF[i].getTablePaneModel().getTotalWidth();
eF[i].setPaneWidth(eI);
var eG=eH?1:0;
eF[i].setLayoutProperties({flex:eG});
}},_updateScrollBarVisibility:function(){if(!this.getBounds()){return;
}var eM=qx.ui.table.pane.Scroller.HORIZONTAL_SCROLLBAR;
var eO=qx.ui.table.pane.Scroller.VERTICAL_SCROLLBAR;
var eJ=this._getPaneScrollerArr();
var eL=false;
var eN=false;

for(var i=0;i<eJ.length;i++){var eP=(i==(eJ.length-1));
var eK=eJ[i].getNeededScrollBars(eL,!eP);

if(eK&eM){eL=true;
}
if(eP&&(eK&eO)){eN=true;
}}for(var i=0;i<eJ.length;i++){var eP=(i==(eJ.length-1));
eJ[i].setHorizontalScrollBarVisible(eL);
if(eP){if(this.__qS==null){this.__qS=eJ[i].getVerticalScrollBarVisible();
this.__jg=qx.event.Timer.once(function(){this.__qS=null;
this.__jg=null;
},this,0);
}}eJ[i].setVerticalScrollBarVisible(eP&&eN);
if(eP&&eN!=this.__qS){this.fireDataEvent(bf,eN);
}}},_initColumnMenu:function(){var eS=this.getTableModel();
var eT=this.getTableColumnModel();
var eU=this.getChildControl(p);
eU.empty();
var eR=eU.getMenu();
var eV={table:this,menu:eR,columnButton:eU};
this.fireDataEvent(bz,eV);
this.__qP={};

for(var eW=0,l=eS.getColumnCount();eW<l;eW++){var eQ=eU.factory(bv,{text:eS.getColumnName(eW),column:eW,bVisible:eT.isColumnVisible(eW)});
qx.core.Assert.assertInterface(eQ,qx.ui.table.IColumnMenuItem);
eQ.addListener(v,this._createColumnVisibilityCheckBoxHandler(eW),this);
this.__qP[eW]=eQ;
}eV={table:this,menu:eR,columnButton:eU};
this.fireDataEvent(z,eV);
},_createColumnVisibilityCheckBoxHandler:function(eX){return function(eY){var fa=this.getTableColumnModel();
fa.setColumnVisible(eX,eY.getData());
};
},setColumnWidth:function(fb,fc){this.getTableColumnModel().setColumnWidth(fb,fc);
},_onResize:function(){this.fireEvent(A);
this._updateScrollerWidths();
this._updateScrollBarVisibility();
},addListener:function(fd,fe,self,ff){if(this.self(arguments).__qM[fd]){var fh=[fd];

for(var i=0,fg=this._getPaneScrollerArr();i<fg.length;i++){fh.push(fg[i].addListener.apply(fg[i],arguments));
}return fh.join(bE);
}else{return qx.ui.core.Widget.prototype.addListener.call(this,fd,fe,self,ff);
}},removeListener:function(fi,fj,self,fk){if(this.self(arguments).__qM[fi]){for(var i=0,fl=this._getPaneScrollerArr();i<fl.length;i++){fl[i].removeListener.apply(fl[i],arguments);
}}else{qx.ui.core.Widget.prototype.removeListener.call(this,fi,fj,self,fk);
}},removeListenerById:function(fm){var fq=fm.split(bE);
var fp=fq.shift();

if(this.self(arguments).__qM[fp]){var fo=true;

for(var i=0,fn=this._getPaneScrollerArr();i<fn.length;i++){fo=fn[i].removeListenerById.call(fn[i],fq[i])&&fo;
}return fo;
}else{return qx.ui.core.Widget.prototype.removeListenerById.call(this,fm);
}},destroy:function(){this.getChildControl(p).getMenu().destroy();
qx.ui.core.Widget.prototype.destroy.call(this);
}},destruct:function(){if(qx.core.Environment.get(bF)){qx.locale.Manager.getInstance().removeListener(e,this._onChangeLocale,this);
}var fs=this.getSelectionModel();

if(fs){fs.dispose();
}var fr=this.getDataRowRenderer();

if(fr){fr.dispose();
}this._cleanUpMetaColumns(0);
this.getTableColumnModel().dispose();
this._disposeObjects(bq,D,bD,bD,c,N);
this._disposeMap(bs);
}});
})();
(function(){var a="qx.ui.table.IRowRenderer";
qx.Interface.define(a,{members:{updateDataRowElement:function(b,c){},getRowHeightStyle:function(d){},createRowStyle:function(e){},getRowClass:function(f){}}});
})();
(function(){var j="",i="table-row-background-even",h="Boolean",g="content",f="default",e="height:",d="'",c="table-row",b="table-row-background-focused",a="css.boxmodel",v=';color:',u="table-row-background-odd",t="1px solid ",s="table-row-line",r="table-row-background-selected",q="background-color:",p=';border-bottom: 1px solid ',o="table-row-selected",n="table-row-background-focused-selected",m="px;",k="qx.ui.table.rowrenderer.Default",l=";";
qx.Class.define(k,{extend:qx.core.Object,implement:qx.ui.table.IRowRenderer,construct:function(){qx.core.Object.call(this);
this.__qT=j;
this.__qT={};
this._colors={};
this._renderFont(qx.theme.manager.Font.getInstance().resolve(f));
var w=qx.theme.manager.Color.getInstance();
this._colors.bgcolFocusedSelected=w.resolve(n);
this._colors.bgcolFocused=w.resolve(b);
this._colors.bgcolSelected=w.resolve(r);
this._colors.bgcolEven=w.resolve(i);
this._colors.bgcolOdd=w.resolve(u);
this._colors.colSelected=w.resolve(o);
this._colors.colNormal=w.resolve(c);
this._colors.horLine=w.resolve(s);
},properties:{highlightFocusRow:{check:h,init:true}},members:{_colors:null,__qU:null,__qT:null,_insetY:1,_renderFont:function(x){if(x){this.__qU=x.getStyles();
this.__qT=qx.bom.element.Style.compile(this.__qU);
this.__qT=this.__qT.replace(/"/g,d);
}else{this.__qT=j;
this.__qU=qx.bom.Font.getDefaultStyles();
}},updateDataRowElement:function(y,z){var B=this.__qU;
var A=z.style;
qx.bom.element.Style.setStyles(z,B);

if(y.focusedRow&&this.getHighlightFocusRow()){A.backgroundColor=y.selected?this._colors.bgcolFocusedSelected:this._colors.bgcolFocused;
}else{if(y.selected){A.backgroundColor=this._colors.bgcolSelected;
}else{A.backgroundColor=(y.row%2==0)?this._colors.bgcolEven:this._colors.bgcolOdd;
}}A.color=y.selected?this._colors.colSelected:this._colors.colNormal;
A.borderBottom=t+this._colors.horLine;
},getRowHeightStyle:function(C){if(qx.core.Environment.get(a)==g){C-=this._insetY;
}return e+C+m;
},createRowStyle:function(D){var E=[];
E.push(l);
E.push(this.__qT);
E.push(q);

if(D.focusedRow&&this.getHighlightFocusRow()){E.push(D.selected?this._colors.bgcolFocusedSelected:this._colors.bgcolFocused);
}else{if(D.selected){E.push(this._colors.bgcolSelected);
}else{E.push((D.row%2==0)?this._colors.bgcolEven:this._colors.bgcolOdd);
}}E.push(v);
E.push(D.selected?this._colors.colSelected:this._colors.colNormal);
E.push(p,this._colors.horLine);
return E.join(j);
},getRowClass:function(F){return j;
},getRowAttributes:function(G){return j;
}},destruct:function(){this._colors=this.__qU=this.__qT=null;
}});
})();
(function(){var a="qx.ui.table.IColumnMenuButton";
qx.Interface.define(a,{properties:{menu:{}},members:{factory:function(b,c){return true;
},empty:function(){return true;
}}});
})();
(function(){var n="pressed",m="hovered",l="changeVisibility",k="qx.ui.menu.Menu",j="submenu",i="Enter",h="abandoned",g="contextmenu",f="changeMenu",d="qx.ui.form.MenuButton",a="visible",c="left",b="_applyMenu";
qx.Class.define(d,{extend:qx.ui.form.Button,construct:function(o,p,q){qx.ui.form.Button.call(this,o,p);
if(q!=null){this.setMenu(q);
}},properties:{menu:{check:k,nullable:true,apply:b,event:f}},members:{_applyVisibility:function(r,s){qx.ui.form.Button.prototype._applyVisibility.call(this,r,s);
var t=this.getMenu();

if(r!=a&&t){t.hide();
}},_applyMenu:function(u,v){if(v){v.removeListener(l,this._onMenuChange,this);
v.resetOpener();
}
if(u){u.addListener(l,this._onMenuChange,this);
u.setOpener(this);
u.removeState(j);
u.removeState(g);
}},open:function(w){var x=this.getMenu();

if(x){qx.ui.menu.Manager.getInstance().hideAll();
x.setOpener(this);
x.open();
if(w){var y=x.getSelectables()[0];

if(y){x.setSelectedButton(y);
}}}},_onMenuChange:function(e){var z=this.getMenu();

if(z.isVisible()){this.addState(n);
}else{this.removeState(n);
}},_onMouseDown:function(e){qx.ui.form.Button.prototype._onMouseDown.call(this,e);
if(e.getButton()!=c){return;
}var A=this.getMenu();

if(A){if(!A.isVisible()){this.open();
}else{A.exclude();
}e.stopPropagation();
}},_onMouseUp:function(e){qx.ui.form.Button.prototype._onMouseUp.call(this,e);
e.stopPropagation();
},_onMouseOver:function(e){this.addState(m);
},_onMouseOut:function(e){this.removeState(m);
},_onKeyDown:function(e){switch(e.getKeyIdentifier()){case i:this.removeState(h);
this.addState(n);
var B=this.getMenu();

if(B){if(!B.isVisible()){this.open();
}else{B.exclude();
}}e.stopPropagation();
}},_onKeyUp:function(e){}}});
})();
(function(){var u="keypress",t="interval",s="keydown",r="mousedown",q="keyup",p="blur",o="Enter",n="__jD",m="__qW",l="Up",d="__qV",k="Escape",h="event.touch",c="qx.ui.menu.Manager",b="Left",g="Down",f="Right",j="singleton",a="Space";
qx.Class.define(c,{type:j,extend:qx.core.Object,construct:function(){qx.core.Object.call(this);
this.__jD=[];
var v=document.body;
var w=qx.event.Registration;
w.addListener(window.document.documentElement,r,this._onMouseDown,this,true);
w.addListener(v,s,this._onKeyUpDown,this,true);
w.addListener(v,q,this._onKeyUpDown,this,true);
w.addListener(v,u,this._onKeyPress,this,true);
if(!qx.core.Environment.get(h)){qx.bom.Element.addListener(window,p,this.hideAll,this);
}this.__qV=new qx.event.Timer;
this.__qV.addListener(t,this._onOpenInterval,this);
this.__qW=new qx.event.Timer;
this.__qW.addListener(t,this._onCloseInterval,this);
},members:{__qX:null,__qY:null,__qV:null,__qW:null,__jD:null,_getChild:function(x,y,z,A){var B=x.getChildren();
var length=B.length;
var C;

for(var i=y;i<length&&i>=0;i+=z){C=B[i];

if(C.isEnabled()&&!C.isAnonymous()){return C;
}}
if(A){i=i==length?0:length-1;

for(;i!=y;i+=z){C=B[i];

if(C.isEnabled()&&!C.isAnonymous()){return C;
}}}return null;
},_isInMenu:function(D){while(D){if(D instanceof qx.ui.menu.Menu){return true;
}D=D.getLayoutParent();
}return false;
},_getMenuButton:function(E){while(E){if(E instanceof qx.ui.menu.AbstractButton){return E;
}E=E.getLayoutParent();
}return null;
},add:function(F){var G=this.__jD;
G.push(F);
F.setZIndex(1e6+G.length);
},remove:function(H){var I=this.__jD;

if(I){qx.lang.Array.remove(I,H);
}},hideAll:function(){var J=this.__jD;

if(J){for(var i=J.length-1;i>=0;i--){J[i].exclude();
}}},getActiveMenu:function(){var K=this.__jD;
return K.length>0?K[K.length-1]:null;
},scheduleOpen:function(L){this.cancelClose(L);
if(L.isVisible()){if(this.__qX){this.cancelOpen(this.__qX);
}}else if(this.__qX!=L){this.__qX=L;
this.__qV.restartWith(L.getOpenInterval());
}},scheduleClose:function(M){this.cancelOpen(M);
if(!M.isVisible()){if(this.__qY){this.cancelClose(this.__qY);
}}else if(this.__qY!=M){this.__qY=M;
this.__qW.restartWith(M.getCloseInterval());
}},cancelOpen:function(N){if(this.__qX==N){this.__qV.stop();
this.__qX=null;
}},cancelClose:function(O){if(this.__qY==O){this.__qW.stop();
this.__qY=null;
}},_onOpenInterval:function(e){this.__qV.stop();
this.__qX.open();
this.__qX=null;
},_onCloseInterval:function(e){this.__qW.stop();
this.__qY.exclude();
this.__qY=null;
},_onMouseDown:function(e){var P=e.getTarget();
P=qx.ui.core.Widget.getWidgetByElement(P,true);
if(P==null){this.hideAll();
return;
}if(P.getMenu&&P.getMenu()&&P.getMenu().isVisible()){return;
}if(this.__jD.length>0&&!this._isInMenu(P)){this.hideAll();
}},__ra:{"Enter":1,"Space":1},__nu:{"Escape":1,"Up":1,"Down":1,"Left":1,"Right":1},_onKeyUpDown:function(e){var Q=this.getActiveMenu();

if(!Q){return;
}var R=e.getKeyIdentifier();

if(this.__nu[R]||(this.__ra[R]&&Q.getSelectedButton())){e.stopPropagation();
}},_onKeyPress:function(e){var S=this.getActiveMenu();

if(!S){return;
}var T=e.getKeyIdentifier();
var V=this.__nu[T];
var U=this.__ra[T];

if(V){switch(T){case l:this._onKeyPressUp(S);
break;
case g:this._onKeyPressDown(S);
break;
case b:this._onKeyPressLeft(S);
break;
case f:this._onKeyPressRight(S);
break;
case k:this.hideAll();
break;
}e.stopPropagation();
e.preventDefault();
}else if(U){var W=S.getSelectedButton();

if(W){switch(T){case o:this._onKeyPressEnter(S,W,e);
break;
case a:this._onKeyPressSpace(S,W,e);
break;
}e.stopPropagation();
e.preventDefault();
}}},_onKeyPressUp:function(X){var Y=X.getSelectedButton();
var ba=X.getChildren();
var bc=Y?X.indexOf(Y)-1:ba.length-1;
var bb=this._getChild(X,bc,-1,true);
if(bb){X.setSelectedButton(bb);
}else{X.resetSelectedButton();
}},_onKeyPressDown:function(bd){var be=bd.getSelectedButton();
var bg=be?bd.indexOf(be)+1:0;
var bf=this._getChild(bd,bg,1,true);
if(bf){bd.setSelectedButton(bf);
}else{bd.resetSelectedButton();
}},_onKeyPressLeft:function(bh){var bm=bh.getOpener();

if(!bm){return;
}if(bm instanceof qx.ui.menu.AbstractButton){var bj=bm.getLayoutParent();
bj.resetOpenedButton();
bj.setSelectedButton(bm);
}else if(bm instanceof qx.ui.menubar.Button){var bl=bm.getMenuBar().getMenuButtons();
var bi=bl.indexOf(bm);
if(bi===-1){return;
}var bn=null;
var length=bl.length;

for(var i=1;i<=length;i++){var bk=bl[(bi-i+length)%length];

if(bk.isEnabled()){bn=bk;
break;
}}
if(bn&&bn!=bm){bn.open(true);
}}},_onKeyPressRight:function(bo){var bq=bo.getSelectedButton();
if(bq){var bp=bq.getMenu();

if(bp){bo.setOpenedButton(bq);
var bw=this._getChild(bp,0,1);

if(bw){bp.setSelectedButton(bw);
}return;
}}else if(!bo.getOpenedButton()){var bw=this._getChild(bo,0,1);

if(bw){bo.setSelectedButton(bw);

if(bw.getMenu()){bo.setOpenedButton(bw);
}return;
}}var bu=bo.getOpener();
if(bu instanceof qx.ui.menu.Button&&bq){while(bu){bu=bu.getLayoutParent();

if(bu instanceof qx.ui.menu.Menu){bu=bu.getOpener();

if(bu instanceof qx.ui.menubar.Button){break;
}}else{break;
}}
if(!bu){return;
}}if(bu instanceof qx.ui.menubar.Button){var bt=bu.getMenuBar().getMenuButtons();
var br=bt.indexOf(bu);
if(br===-1){return;
}var bv=null;
var length=bt.length;

for(var i=1;i<=length;i++){var bs=bt[(br+i)%length];

if(bs.isEnabled()){bv=bs;
break;
}}
if(bv&&bv!=bu){bv.open(true);
}}},_onKeyPressEnter:function(bx,by,e){if(by.hasListener(u)){var bz=e.clone();
bz.setBubbles(false);
bz.setTarget(by);
by.dispatchEvent(bz);
}this.hideAll();
},_onKeyPressSpace:function(bA,bB,e){if(bB.hasListener(u)){var bC=e.clone();
bC.setBubbles(false);
bC.setTarget(bB);
bB.dispatchEvent(bC);
}}},destruct:function(){var bE=qx.event.Registration;
var bD=document.body;
bE.removeListener(window.document.documentElement,r,this._onMouseDown,this,true);
bE.removeListener(bD,s,this._onKeyUpDown,this,true);
bE.removeListener(bD,q,this._onKeyUpDown,this,true);
bE.removeListener(bD,u,this._onKeyPress,this,true);
this._disposeObjects(d,m);
this._disposeArray(n);
}});
})();
(function(){var l="slidebar",k="Integer",j="resize",h="qx.ui.core.Widget",g="selected",f="visible",d="Boolean",c="mouseout",b="excluded",a="menu",A="_applySelectedButton",z="_applyOpenInterval",y="_applySpacingY",x="_blocker",w="_applyCloseInterval",v="_applyBlockerColor",u="_applyIconColumnWidth",t="mouseover",s="qx.ui.menu.Menu",r="Color",p="Number",q="_applyOpenedButton",n="_applySpacingX",o="_applyBlockerOpacity",m="_applyArrowColumnWidth";
qx.Class.define(s,{extend:qx.ui.core.Widget,include:[qx.ui.core.MPlacement,qx.ui.core.MRemoteChildrenHandling],construct:function(){qx.ui.core.Widget.call(this);
this._setLayout(new qx.ui.menu.Layout);
var B=this.getApplicationRoot();
B.add(this);
this.addListener(t,this._onMouseOver);
this.addListener(c,this._onMouseOut);
this.addListener(j,this._onResize,this);
B.addListener(j,this._onResize,this);
this._blocker=new qx.ui.core.Blocker(B);
this.initVisibility();
this.initKeepFocus();
this.initKeepActive();
},properties:{appearance:{refine:true,init:a},allowGrowX:{refine:true,init:false},allowGrowY:{refine:true,init:false},visibility:{refine:true,init:b},keepFocus:{refine:true,init:true},keepActive:{refine:true,init:true},spacingX:{check:k,apply:n,init:0,themeable:true},spacingY:{check:k,apply:y,init:0,themeable:true},iconColumnWidth:{check:k,init:0,themeable:true,apply:u},arrowColumnWidth:{check:k,init:0,themeable:true,apply:m},blockerColor:{check:r,init:null,nullable:true,apply:v,themeable:true},blockerOpacity:{check:p,init:1,apply:o,themeable:true},selectedButton:{check:h,nullable:true,apply:A},openedButton:{check:h,nullable:true,apply:q},opener:{check:h,nullable:true},openInterval:{check:k,themeable:true,init:250,apply:z},closeInterval:{check:k,themeable:true,init:250,apply:w},blockBackground:{check:d,themeable:true,init:false}},members:{__rb:null,__rc:null,_blocker:null,open:function(){if(this.getOpener()!=null){this.placeToWidget(this.getOpener());
this.__re();
this.show();
this._placementTarget=this.getOpener();
}else{this.warn("The menu instance needs a configured 'opener' widget!");
}},openAtMouse:function(e){this.placeToMouse(e);
this.__re();
this.show();
this._placementTarget={left:e.getDocumentLeft(),top:e.getDocumentTop()};
},openAtPoint:function(C){this.placeToPoint(C);
this.__re();
this.show();
this._placementTarget=C;
},addSeparator:function(){this.add(new qx.ui.menu.Separator);
},getColumnSizes:function(){return this._getMenuLayout().getColumnSizes();
},getSelectables:function(){var D=[];
var E=this.getChildren();

for(var i=0;i<E.length;i++){if(E[i].isEnabled()){D.push(E[i]);
}}return D;
},_applyIconColumnWidth:function(F,G){this._getMenuLayout().setIconColumnWidth(F);
},_applyArrowColumnWidth:function(H,I){this._getMenuLayout().setArrowColumnWidth(H);
},_applySpacingX:function(J,K){this._getMenuLayout().setColumnSpacing(J);
},_applySpacingY:function(L,M){this._getMenuLayout().setSpacing(L);
},_applyVisibility:function(N,O){qx.ui.core.Widget.prototype._applyVisibility.call(this,N,O);
var P=qx.ui.menu.Manager.getInstance();

if(N===f){P.add(this);
var Q=this.getParentMenu();

if(Q){Q.setOpenedButton(this.getOpener());
}}else if(O===f){P.remove(this);
var Q=this.getParentMenu();

if(Q&&Q.getOpenedButton()==this.getOpener()){Q.resetOpenedButton();
}this.resetOpenedButton();
this.resetSelectedButton();
}this.__rd();
},__rd:function(){if(this.isVisible()){if(this.getBlockBackground()){var R=this.getZIndex();
this._blocker.blockContent(R-1);
}}else{if(this._blocker.isContentBlocked()){this._blocker.unblockContent();
}}},getParentMenu:function(){var S=this.getOpener();

if(!S||!(S instanceof qx.ui.menu.AbstractButton)){return null;
}
if(S&&S.getContextMenu()===this){return null;
}
while(S&&!(S instanceof qx.ui.menu.Menu)){S=S.getLayoutParent();
}return S;
},_applySelectedButton:function(T,U){if(U){U.removeState(g);
}
if(T){T.addState(g);
}},_applyOpenedButton:function(V,W){if(W&&W.getMenu()){W.getMenu().exclude();
}
if(V){V.getMenu().open();
}},_applyBlockerColor:function(X,Y){this._blocker.setColor(X);
},_applyBlockerOpacity:function(ba,bb){this._blocker.setOpacity(ba);
},getChildrenContainer:function(){return this.getChildControl(l,true)||this;
},_createChildControlImpl:function(bc,bd){var be;

switch(bc){case l:var be=new qx.ui.menu.MenuSlideBar();
var bg=this._getLayout();
this._setLayout(new qx.ui.layout.Grow());
var bf=be.getLayout();
be.setLayout(bg);
bf.dispose();
var bh=qx.lang.Array.clone(this.getChildren());

for(var i=0;i<bh.length;i++){be.add(bh[i]);
}this.removeListener(j,this._onResize,this);
be.getChildrenContainer().addListener(j,this._onResize,this);
this._add(be);
break;
}return be||qx.ui.core.Widget.prototype._createChildControlImpl.call(this,bc);
},_getMenuLayout:function(){if(this.hasChildControl(l)){return this.getChildControl(l).getChildrenContainer().getLayout();
}else{return this._getLayout();
}},_getMenuBounds:function(){if(this.hasChildControl(l)){return this.getChildControl(l).getChildrenContainer().getBounds();
}else{return this.getBounds();
}},_computePlacementSize:function(){return this._getMenuBounds();
},__re:function(){var bj=this._getMenuBounds();

if(!bj){this.addListenerOnce(j,this.__re,this);
return;
}var bi=this.getLayoutParent().getBounds().height;
var top=this.getLayoutProperties().top;
var bk=this.getLayoutProperties().left;
if(top<0){this._assertSlideBar(function(){this.setHeight(bj.height+top);
this.moveTo(bk,0);
});
}else if(top+bj.height>bi){this._assertSlideBar(function(){this.setHeight(bi-top);
});
}else{this.setHeight(null);
}},_assertSlideBar:function(bl){if(this.hasChildControl(l)){return bl.call(this);
}this.__rc=bl;
qx.ui.core.queue.Widget.add(this);
},syncWidget:function(){this.getChildControl(l);

if(this.__rc){this.__rc.call(this);
delete this.__rc;
}},_onResize:function(){if(this.isVisible()){var bm=this._placementTarget;

if(!bm){return;
}else if(bm instanceof qx.ui.core.Widget){this.placeToWidget(bm);
}else if(bm.top!==undefined){this.placeToPoint(bm);
}else{throw new Error("Unknown target: "+bm);
}this.__re();
}},_onMouseOver:function(e){var bo=qx.ui.menu.Manager.getInstance();
bo.cancelClose(this);
var bp=e.getTarget();

if(bp.isEnabled()&&bp instanceof qx.ui.menu.AbstractButton){this.setSelectedButton(bp);
var bn=bp.getMenu&&bp.getMenu();

if(bn){bn.setOpener(bp);
bo.scheduleOpen(bn);
this.__rb=bn;
}else{var bq=this.getOpenedButton();

if(bq){bo.scheduleClose(bq.getMenu());
}
if(this.__rb){bo.cancelOpen(this.__rb);
this.__rb=null;
}}}else if(!this.getOpenedButton()){this.resetSelectedButton();
}},_onMouseOut:function(e){var br=qx.ui.menu.Manager.getInstance();
if(!qx.ui.core.Widget.contains(this,e.getRelatedTarget())){var bs=this.getOpenedButton();
bs?this.setSelectedButton(bs):this.resetSelectedButton();
if(bs){br.cancelClose(bs.getMenu());
}if(this.__rb){br.cancelOpen(this.__rb);
}}}},destruct:function(){if(!qx.core.ObjectRegistry.inShutDown){qx.ui.menu.Manager.getInstance().remove(this);
}this.getApplicationRoot().removeListener(j,this._onResize,this);
this._placementTarget=null;
this._disposeObjects(x);
}});
})();
(function(){var c="Integer",b="_applyLayoutChange",a="qx.ui.menu.Layout";
qx.Class.define(a,{extend:qx.ui.layout.VBox,properties:{columnSpacing:{check:c,init:0,apply:b},spanColumn:{check:c,init:1,nullable:true,apply:b},iconColumnWidth:{check:c,init:0,themeable:true,apply:b},arrowColumnWidth:{check:c,init:0,themeable:true,apply:b}},members:{__rf:null,_computeSizeHint:function(){var q=this._getLayoutChildren();
var o,g,j;
var e=this.getSpanColumn();
var h=this.__rf=[0,0,0,0];
var m=this.getColumnSpacing();
var k=0;
var f=0;
for(var i=0,l=q.length;i<l;i++){o=q[i];

if(o.isAnonymous()){continue;
}g=o.getChildrenSizes();

for(var n=0;n<g.length;n++){if(e!=null&&n==e&&g[e+1]==0){k=Math.max(k,g[n]);
}else{h[n]=Math.max(h[n],g[n]);
}}var d=q[i].getInsets();
f=Math.max(f,d.left+d.right);
}if(e!=null&&h[e]+m+h[e+1]<k){h[e]=k-h[e+1]-m;
}if(k==0){j=m*2;
}else{j=m*3;
}if(h[0]==0){h[0]=this.getIconColumnWidth();
}if(h[3]==0){h[3]=this.getArrowColumnWidth();
}var p=qx.ui.layout.VBox.prototype._computeSizeHint.call(this).height;
return {minHeight:p,height:p,width:qx.lang.Array.sum(h)+f+j};
},getColumnSizes:function(){return this.__rf||null;
}},destruct:function(){this.__rf=null;
}});
})();
(function(){var b="menu-separator",a="qx.ui.menu.Separator";
qx.Class.define(a,{extend:qx.ui.core.Widget,properties:{appearance:{refine:true,init:b},anonymous:{refine:true,init:true}}});
})();
(function(){var s="icon",r="label",q="arrow",p="shortcut",o="changeLocale",n="qx.dynlocale",m="submenu",l="String",k="changeCommand",j="qx.ui.menu.Menu",c="qx.ui.menu.AbstractButton",i="keypress",g="",b="_applyIcon",a="mouseup",f="abstract",d="_applyLabel",h="_applyMenu";
qx.Class.define(c,{extend:qx.ui.core.Widget,include:[qx.ui.core.MExecutable],implement:[qx.ui.form.IExecutable],type:f,construct:function(){qx.ui.core.Widget.call(this);
this._setLayout(new qx.ui.menu.ButtonLayout);
this.addListener(a,this._onMouseUp);
this.addListener(i,this._onKeyPress);
this.addListener(k,this._onChangeCommand,this);
},properties:{blockToolTip:{refine:true,init:true},label:{check:l,apply:d,nullable:true},menu:{check:j,apply:h,nullable:true,dereference:true},icon:{check:l,apply:b,themeable:true,nullable:true}},members:{_createChildControlImpl:function(t,u){var v;

switch(t){case s:v=new qx.ui.basic.Image;
v.setAnonymous(true);
this._add(v,{column:0});
break;
case r:v=new qx.ui.basic.Label;
v.setAnonymous(true);
this._add(v,{column:1});
break;
case p:v=new qx.ui.basic.Label;
v.setAnonymous(true);
this._add(v,{column:2});
break;
case q:v=new qx.ui.basic.Image;
v.setAnonymous(true);
this._add(v,{column:3});
break;
}return v||qx.ui.core.Widget.prototype._createChildControlImpl.call(this,t);
},_forwardStates:{selected:1},getChildrenSizes:function(){var w=0,x=0,y=0,C=0;

if(this._isChildControlVisible(s)){var D=this.getChildControl(s);
w=D.getMarginLeft()+D.getSizeHint().width+D.getMarginRight();
}
if(this._isChildControlVisible(r)){var A=this.getChildControl(r);
x=A.getMarginLeft()+A.getSizeHint().width+A.getMarginRight();
}
if(this._isChildControlVisible(p)){var z=this.getChildControl(p);
y=z.getMarginLeft()+z.getSizeHint().width+z.getMarginRight();
}
if(this._isChildControlVisible(q)){var B=this.getChildControl(q);
C=B.getMarginLeft()+B.getSizeHint().width+B.getMarginRight();
}return [w,x,y,C];
},_onMouseUp:function(e){},_onKeyPress:function(e){},_onChangeCommand:function(e){var G=e.getData();
if(G==null){return;
}
if(qx.core.Environment.get(n)){var E=e.getOldData();

if(!E){qx.locale.Manager.getInstance().addListener(o,this._onChangeLocale,this);
}
if(!G){qx.locale.Manager.getInstance().removeListener(o,this._onChangeLocale,this);
}}var F=G!=null?G.toString():g;
this.getChildControl(p).setValue(F);
},_onChangeLocale:qx.core.Environment.select(n,{"true":function(e){var H=this.getCommand();

if(H!=null){this.getChildControl(p).setValue(H.toString());
}},"false":null}),_applyIcon:function(I,J){if(I){this._showChildControl(s).setSource(I);
}else{this._excludeChildControl(s);
}},_applyLabel:function(K,L){if(K){this._showChildControl(r).setValue(K);
}else{this._excludeChildControl(r);
}},_applyMenu:function(M,N){if(N){N.resetOpener();
N.removeState(m);
}
if(M){this._showChildControl(q);
M.setOpener(this);
M.addState(m);
}else{this._excludeChildControl(q);
}}},destruct:function(){this.removeListener(k,this._onChangeCommand,this);

if(this.getMenu()){if(!qx.core.ObjectRegistry.inShutDown){this.getMenu().destroy();
}}
if(qx.core.Environment.get(n)){qx.locale.Manager.getInstance().removeListener(o,this._onChangeLocale,this);
}}});
})();
(function(){var c="middle",b="qx.ui.menu.ButtonLayout",a="left";
qx.Class.define(b,{extend:qx.ui.layout.Abstract,members:{verifyLayoutProperty:null,renderLayout:function(d,e){var q=this._getLayoutChildren();
var p;
var g;
var h=[];

for(var i=0,l=q.length;i<l;i++){p=q[i];
g=p.getLayoutProperties().column;
h[g]=p;
}var o=this.__rg(q[0]);
var r=o.getColumnSizes();
var k=o.getSpacingX();
var j=qx.lang.Array.sum(r)+k*(r.length-1);

if(j<d){r[1]+=d-j;
}var s=0,top=0;
var m=qx.ui.layout.Util;

for(var i=0,l=r.length;i<l;i++){p=h[i];

if(p){var f=p.getSizeHint();
var top=m.computeVerticalAlignOffset(p.getAlignY()||c,f.height,e,0,0);
var n=m.computeHorizontalAlignOffset(p.getAlignX()||a,f.width,r[i],p.getMarginLeft(),p.getMarginRight());
p.renderLayout(s+n,top,f.width,f.height);
}s+=r[i]+k;
}},__rg:function(t){while(!(t instanceof qx.ui.menu.Menu)){t=t.getLayoutParent();
}return t;
},_computeSizeHint:function(){var w=this._getLayoutChildren();
var v=0;
var x=0;

for(var i=0,l=w.length;i<l;i++){var u=w[i].getSizeHint();
x+=u.width;
v=Math.max(v,u.height);
}return {width:x,height:v};
}}});
})();
(function(){var f="execute",e="button-backward",d="vertical",c="button-forward",b="menu-slidebar",a="qx.ui.menu.MenuSlideBar";
qx.Class.define(a,{extend:qx.ui.container.SlideBar,construct:function(){qx.ui.container.SlideBar.call(this,d);
},properties:{appearance:{refine:true,init:b}},members:{_createChildControlImpl:function(g,h){var i;

switch(g){case c:i=new qx.ui.form.HoverButton();
i.addListener(f,this._onExecuteForward,this);
this._addAt(i,2);
break;
case e:i=new qx.ui.form.HoverButton();
i.addListener(f,this._onExecuteBackward,this);
this._addAt(i,0);
break;
}return i||qx.ui.container.SlideBar.prototype._createChildControlImpl.call(this,g);
}}});
})();
(function(){var i="Integer",h="hovered",g="hover-button",f="__jg",d="interval",c="mouseover",b="mouseout",a="qx.ui.form.HoverButton";
qx.Class.define(a,{extend:qx.ui.basic.Atom,include:[qx.ui.core.MExecutable],implement:[qx.ui.form.IExecutable],construct:function(j,k){qx.ui.basic.Atom.call(this,j,k);
this.addListener(c,this._onMouseOver,this);
this.addListener(b,this._onMouseOut,this);
this.__jg=new qx.event.AcceleratingTimer();
this.__jg.addListener(d,this._onInterval,this);
},properties:{appearance:{refine:true,init:g},interval:{check:i,init:80},firstInterval:{check:i,init:200},minTimer:{check:i,init:20},timerDecrease:{check:i,init:2}},members:{__jg:null,_onMouseOver:function(e){if(!this.isEnabled()||e.getTarget()!==this){return;
}this.__jg.set({interval:this.getInterval(),firstInterval:this.getFirstInterval(),minimum:this.getMinTimer(),decrease:this.getTimerDecrease()}).start();
this.addState(h);
},_onMouseOut:function(e){this.__jg.stop();
this.removeState(h);

if(!this.isEnabled()||e.getTarget()!==this){return;
}},_onInterval:function(){if(this.isEnabled()){this.execute();
}else{this.__jg.stop();
}}},destruct:function(){this._disposeObjects(f);
}});
})();
(function(){var h="pressed",g="hovered",f="inherit",d="qx.ui.menubar.Button",c="keydown",b="menubar-button",a="keyup";
qx.Class.define(d,{extend:qx.ui.form.MenuButton,construct:function(i,j,k){qx.ui.form.MenuButton.call(this,i,j,k);
this.removeListener(c,this._onKeyDown);
this.removeListener(a,this._onKeyUp);
},properties:{appearance:{refine:true,init:b},show:{refine:true,init:f},focusable:{refine:true,init:false}},members:{getMenuBar:function(){var parent=this;

while(parent){if(parent instanceof qx.ui.toolbar.ToolBar){return parent;
}parent=parent.getLayoutParent();
}return null;
},open:function(l){qx.ui.form.MenuButton.prototype.open.call(this,l);
var menubar=this.getMenuBar();
menubar._setAllowMenuOpenHover(true);
},_onMenuChange:function(e){var m=this.getMenu();
var menubar=this.getMenuBar();

if(m.isVisible()){this.addState(h);
if(menubar){menubar.setOpenMenu(m);
}}else{this.removeState(h);
if(menubar&&menubar.getOpenMenu()==m){menubar.resetOpenMenu();
menubar._setAllowMenuOpenHover(false);
}}},_onMouseUp:function(e){qx.ui.form.MenuButton.prototype._onMouseUp.call(this,e);
var n=this.getMenu();

if(n&&n.isVisible()&&!this.hasState(h)){this.addState(h);
}},_onMouseOver:function(e){this.addState(g);
if(this.getMenu()){var menubar=this.getMenuBar();

if(menubar._isAllowMenuOpenHover()){qx.ui.menu.Manager.getInstance().hideAll();
menubar._setAllowMenuOpenHover(true);
if(this.isEnabled()){this.open();
}}}}}});
})();
(function(){var w="visible",v="excluded",u="resize",t="qx.event.type.Data",s="both",r="qx.ui.menu.Menu",q="_applySpacing",p="showItem",o="Boolean",n="icon",d="label",m="qx.ui.core.Widget",h="_applyOverflowIndicator",c="_applyOverflowHandling",b="changeShow",g="Integer",f="qx.ui.toolbar.ToolBar",j="hideItem",a="toolbar",k="changeOpenMenu";
qx.Class.define(f,{extend:qx.ui.core.Widget,include:qx.ui.core.MChildrenHandling,construct:function(){qx.ui.core.Widget.call(this);
this._setLayout(new qx.ui.layout.HBox());
this.__rh=[];
this.__ri=[];
},properties:{appearance:{refine:true,init:a},openMenu:{check:r,event:k,nullable:true},show:{init:s,check:[s,d,n],inheritable:true,event:b},spacing:{nullable:true,check:g,themeable:true,apply:q},overflowIndicator:{check:m,nullable:true,apply:h},overflowHandling:{init:false,check:o,apply:c}},events:{"hideItem":t,"showItem":t},members:{__rh:null,__ri:null,_computeSizeHint:function(){var z=qx.ui.core.Widget.prototype._computeSizeHint.call(this);

if(true&&this.getOverflowHandling()){var x=0;
var y=this.getOverflowIndicator();

if(y){x=y.getSizeHint().width+this.getSpacing();
}z.minWidth=x;
}return z;
},_onResize:function(e){this._recalculateOverflow(e.getData().width);
},_recalculateOverflow:function(A,B){if(!this.getOverflowHandling()){return;
}B=B||this.getSizeHint().width;
var C=this.getOverflowIndicator();
var I=0;

if(C){I=C.getSizeHint().width;
}
if(A==undefined&&this.getBounds()!=null){A=this.getBounds().width;
}if(A==undefined){return ;
}if(A<B){do{var J=this._getNextToHide();
if(!J){return;
}var L=J.getMarginLeft()+J.getMarginRight();
L=Math.max(L,this.getSpacing());
var G=J.getSizeHint().width+L;
this.__rk(J);
B-=G;
if(C&&C.getVisibility()!=w){C.setVisibility(w);
B+=I;
var E=C.getMarginLeft()+C.getMarginRight();
B+=Math.max(E,this.getSpacing());
}}while(B>A);
}else if(this.__rh.length>0){do{var M=this.__rh[0];
if(M){var L=M.getMarginLeft()+M.getMarginRight();
L=Math.max(L,this.getSpacing());
if(M.getDecoratorElement()==null){M.syncAppearance();
M.invalidateLayoutCache();
}var F=M.getSizeHint().width;
var K=false;
if(this.__rh.length==1&&I>0){var D=L-this.getSpacing();
var H=B-I+F+D;
K=A>H;
}if(A>B+F+L||K){this.__rj(M);
B+=F;
if(C&&this.__rh.length==0){C.setVisibility(v);
}}else{return;
}}}while(A>=B&&this.__rh.length>0);
}},__rj:function(N){N.setVisibility(w);
this.__rh.shift();
this.fireDataEvent(p,N);
},__rk:function(O){if(!O){return;
}this.__rh.unshift(O);
O.setVisibility(v);
this.fireDataEvent(j,O);
},_getNextToHide:function(){for(var i=this.__ri.length-1;i>=0;i--){var P=this.__ri[i];
if(P&&P.getVisibility&&P.getVisibility()==w){return P;
}}var Q=this._getChildren();

for(var i=Q.length-1;i>=0;i--){var R=Q[i];
if(R==this.getOverflowIndicator()){continue;
}if(R.getVisibility&&R.getVisibility()==w){return R;
}}},setRemovePriority:function(S,T,U){if(!U&&this.__ri[T]!=undefined){throw new Error("Priority already in use!");
}this.__ri[T]=S;
},_applyOverflowHandling:function(V,W){this.invalidateLayoutCache();
var parent=this.getLayoutParent();

if(parent){parent.invalidateLayoutCache();
}var Y=this.getBounds();

if(Y&&Y.width){this._recalculateOverflow(Y.width);
}if(V){this.addListener(u,this._onResize,this);
}else{this.removeListener(u,this._onResize,this);
var X=this.getOverflowIndicator();

if(X){X.setVisibility(v);
}for(var i=0;i<this.__rh.length;i++){this.__rh[i].setVisibility(w);
}this.__rh=[];
}},_applyOverflowIndicator:function(ba,bb){if(bb){this._remove(bb);
}
if(ba){if(this._indexOf(ba)==-1){throw new Error("Widget must be child of the toolbar.");
}ba.setVisibility(v);
}},__rl:false,_setAllowMenuOpenHover:function(bc){this.__rl=bc;
},_isAllowMenuOpenHover:function(){return this.__rl;
},_applySpacing:function(bd,be){var bf=this._getLayout();
bd==null?bf.resetSpacing():bf.setSpacing(bd);
},_add:function(bg,bh){qx.ui.core.Widget.prototype._add.call(this,bg,bh);
var bi=this.getSizeHint().width+bg.getSizeHint().width+2*this.getSpacing();
this._recalculateOverflow(null,bi);
},_addAt:function(bj,bk,bl){qx.ui.core.Widget.prototype._addAt.call(this,bj,bk,bl);
var bm=this.getSizeHint().width+bj.getSizeHint().width+2*this.getSpacing();
this._recalculateOverflow(null,bm);
},_addBefore:function(bn,bo,bp){qx.ui.core.Widget.prototype._addBefore.call(this,bn,bo,bp);
var bq=this.getSizeHint().width+bn.getSizeHint().width+2*this.getSpacing();
this._recalculateOverflow(null,bq);
},_addAfter:function(br,bs,bt){qx.ui.core.Widget.prototype._addAfter.call(this,br,bs,bt);
var bu=this.getSizeHint().width+br.getSizeHint().width+2*this.getSpacing();
this._recalculateOverflow(null,bu);
},_remove:function(bv){qx.ui.core.Widget.prototype._remove.call(this,bv);
var bw=this.getSizeHint().width-bv.getSizeHint().width-2*this.getSpacing();
this._recalculateOverflow(null,bw);
},_removeAt:function(bx){var bz=this._getChildren()[bx];
qx.ui.core.Widget.prototype._removeAt.call(this,bx);
var by=this.getSizeHint().width-bz.getSizeHint().width-2*this.getSpacing();
this._recalculateOverflow(null,by);
},_removeAll:function(){qx.ui.core.Widget.prototype._removeAll.call(this);
this._recalculateOverflow(null,0);
},addSpacer:function(){var bA=new qx.ui.core.Spacer;
this._add(bA,{flex:1});
return bA;
},addSeparator:function(){this.add(new qx.ui.toolbar.Separator);
},getMenuButtons:function(){var bC=this.getChildren();
var bB=[];
var bD;

for(var i=0,l=bC.length;i<l;i++){bD=bC[i];

if(bD instanceof qx.ui.menubar.Button){bB.push(bD);
}else if(bD instanceof qx.ui.toolbar.Part){bB.push.apply(bB,bD.getMenuButtons());
}}return bB;
}},destruct:function(){if(this.hasListener(u)){this.removeListener(u,this._onResize,this);
}}});
})();
(function(){var b="toolbar-separator",a="qx.ui.toolbar.Separator";
qx.Class.define(a,{extend:qx.ui.core.Widget,properties:{appearance:{refine:true,init:b},anonymous:{refine:true,init:true},width:{refine:true,init:0},height:{refine:true,init:0}}});
})();
(function(){var p="middle",o="left",n="right",m="container",k="handle",j="both",h="Integer",g="qx.ui.toolbar.Part",f="icon",e="label",b="syncAppearance",d="changeShow",c="_applySpacing",a="toolbar/part";
qx.Class.define(g,{extend:qx.ui.core.Widget,include:[qx.ui.core.MRemoteChildrenHandling],construct:function(){qx.ui.core.Widget.call(this);
this._setLayout(new qx.ui.layout.HBox);
this._createChildControl(k);
},properties:{appearance:{refine:true,init:a},show:{init:j,check:[j,e,f],inheritable:true,event:d},spacing:{nullable:true,check:h,themeable:true,apply:c}},members:{_createChildControlImpl:function(q,r){var s;

switch(q){case k:s=new qx.ui.basic.Image();
s.setAlignY(p);
this._add(s);
break;
case m:s=new qx.ui.toolbar.PartContainer();
s.addListener(b,this.__rm,this);
this._add(s);
break;
}return s||qx.ui.core.Widget.prototype._createChildControlImpl.call(this,q);
},getChildrenContainer:function(){return this.getChildControl(m);
},_applySpacing:function(t,u){var v=this.getChildControl(m).getLayout();
t==null?v.resetSpacing():v.setSpacing(t);
},__rm:function(){var w=this.getChildrenContainer().getChildren();

for(var i=0;i<w.length;i++){if(i==0&&i!=w.length-1){w[i].addState(o);
w[i].removeState(n);
w[i].removeState(p);
}else if(i==w.length-1&&i!=0){w[i].addState(n);
w[i].removeState(o);
w[i].removeState(p);
}else if(i==0&&i==w.length-1){w[i].removeState(o);
w[i].removeState(p);
w[i].removeState(n);
}else{w[i].addState(p);
w[i].removeState(n);
w[i].removeState(o);
}}},addSeparator:function(){this.add(new qx.ui.toolbar.Separator);
},getMenuButtons:function(){var y=this.getChildren();
var x=[];
var z;

for(var i=0,l=y.length;i<l;i++){z=y[i];

if(z instanceof qx.ui.menubar.Button){x.push(z);
}}return x;
}}});
})();
(function(){var f="both",e="toolbar/part/container",d="icon",c="changeShow",b="qx.ui.toolbar.PartContainer",a="label";
qx.Class.define(b,{extend:qx.ui.container.Composite,construct:function(){qx.ui.container.Composite.call(this);
this._setLayout(new qx.ui.layout.HBox);
},properties:{appearance:{refine:true,init:e},show:{init:f,check:[f,a,d],inheritable:true,event:c}}});
})();
(function(){var b="qx.ui.menu.Button",a="menu-button";
qx.Class.define(b,{extend:qx.ui.menu.AbstractButton,construct:function(c,d,f,g){qx.ui.menu.AbstractButton.call(this);
if(c!=null){this.setLabel(c);
}
if(d!=null){this.setIcon(d);
}
if(f!=null){this.setCommand(f);
}
if(g!=null){this.setMenu(g);
}},properties:{appearance:{refine:true,init:a}},members:{_onMouseUp:function(e){if(e.isLeftPressed()){this.execute();
if(this.getMenu()){return;
}}else{if(this.getContextMenu()){return;
}}qx.ui.menu.Manager.getInstance().hideAll();
},_onKeyPress:function(e){this.execute();
}}});
})();
(function(){var f="menu-button",e="table-column-reset-button",d="separator",c="user-button",b="qx.ui.table.columnmenu.Button",a="menu";
qx.Class.define(b,{extend:qx.ui.form.MenuButton,implement:qx.ui.table.IColumnMenuButton,construct:function(){qx.ui.form.MenuButton.call(this);
this.__jW=new qx.ui.core.Blocker(this);
},members:{__qP:null,__jW:null,factory:function(g,h){switch(g){case a:var j=new qx.ui.menu.Menu();
this.setMenu(j);
return j;
case f:var m=new qx.ui.table.columnmenu.MenuItem(h.text);
m.setVisible(h.bVisible);
this.getMenu().add(m);
return m;
case c:var k=new qx.ui.menu.Button(h.text);
k.set({appearance:e});
return k;
case d:return new qx.ui.menu.Separator();
default:throw new Error("Unrecognized factory request: "+g);
}},getBlocker:function(){return this.__jW;
},empty:function(){var n=this.getMenu();
var o=n.getChildren();

for(var i=0,l=o.length;i<l;i++){o[0].destroy();
}}},destruct:function(){this.__jW.dispose();
}});
})();
(function(){var m="checked",l="menu-checkbox",k="Boolean",j="label",i="_applyValue",h="value",g="changeValue",f="toolTipText",d="enabled",c="qx.ui.menu.CheckBox",a="menu",b="execute";
qx.Class.define(c,{extend:qx.ui.menu.AbstractButton,implement:[qx.ui.form.IBooleanForm],construct:function(n,o){qx.ui.menu.AbstractButton.call(this);
if(n!=null){if(n.translate){this.setLabel(n.translate());
}else{this.setLabel(n);
}}
if(o!=null){this.setMenu(o);
}this.addListener(b,this._onExecute,this);
},properties:{appearance:{refine:true,init:l},value:{check:k,init:false,apply:i,event:g,nullable:true}},members:{_bindableProperties:[d,j,f,h,a],_applyValue:function(p,q){p?this.addState(m):this.removeState(m);
},_onExecute:function(e){this.toggleValue();
},_onMouseUp:function(e){if(e.isLeftPressed()){this.execute();
}else{if(this.getContextMenu()){return;
}}qx.ui.menu.Manager.getInstance().hideAll();
},_onKeyPress:function(e){this.execute();
}}});
})();
(function(){var b="qx.ui.table.IColumnMenuItem",a="qx.event.type.Data";
qx.Interface.define(b,{properties:{visible:{}},events:{changeVisible:a}});
})();
(function(){var f="changeVisible",d="qx.ui.table.columnmenu.MenuItem",c="_applyVisible",b="Boolean",a="changeValue";
qx.Class.define(d,{extend:qx.ui.menu.CheckBox,implement:qx.ui.table.IColumnMenuItem,properties:{visible:{check:b,init:true,apply:c,event:f}},construct:function(g){qx.ui.menu.CheckBox.call(this,g);
this.addListener(a,function(e){this.bInListener=true;
this.setVisible(e.getData());
this.bInListener=false;
});
},members:{__rn:false,_applyVisible:function(h,i){if(!this.bInListener){this.setValue(h);
}}}});
})();
(function(){var b="qx.ui.table.selection.Model",a="qx.ui.table.selection.Manager";
qx.Class.define(a,{extend:qx.core.Object,construct:function(){qx.core.Object.call(this);
},properties:{selectionModel:{check:b}},members:{__ro:null,handleMouseDown:function(c,d){if(d.isLeftPressed()){var e=this.getSelectionModel();

if(!e.isSelectedIndex(c)){this._handleSelectEvent(c,d);
this.__ro=true;
}else{this.__ro=false;
}}else if(d.isRightPressed()&&d.getModifiers()==0){var e=this.getSelectionModel();

if(!e.isSelectedIndex(c)){e.setSelectionInterval(c,c);
}}},handleMouseUp:function(f,g){if(g.isLeftPressed()&&!this.__ro){this._handleSelectEvent(f,g);
}},handleClick:function(h,i){},handleSelectKeyDown:function(j,k){this._handleSelectEvent(j,k);
},handleMoveKeyDown:function(l,m){var o=this.getSelectionModel();

switch(m.getModifiers()){case 0:o.setSelectionInterval(l,l);
break;
case qx.event.type.Dom.SHIFT_MASK:var n=o.getAnchorSelectionIndex();

if(n==-1){o.setSelectionInterval(l,l);
}else{o.setSelectionInterval(n,l);
}break;
}},_handleSelectEvent:function(p,q){var t=this.getSelectionModel();
var r=t.getLeadSelectionIndex();
var s=t.getAnchorSelectionIndex();

if(q.isShiftPressed()){if(p!=r||t.isSelectionEmpty()){if(s==-1){s=p;
}
if(q.isCtrlOrCommandPressed()){t.addSelectionInterval(s,p);
}else{t.setSelectionInterval(s,p);
}}}else if(q.isCtrlOrCommandPressed()){if(t.isSelectedIndex(p)){t.removeSelectionInterval(p,p);
}else{t.addSelectionInterval(p,p);
}}else{t.setSelectionInterval(p,p);
}}}});
})();
(function(){var n="]",m="..",l="changeSelection",k=" [",h='ie',g="browser.version",f="qx.event.type.Event",d="Ranges:",c="qx.ui.table.selection.Model",b="browser.name",a="_applySelectionMode";
qx.Class.define(c,{extend:qx.core.Object,construct:function(){qx.core.Object.call(this);
this.__rp=[];
this.__rq=-1;
this.__rr=-1;
this.hasBatchModeRefCount=0;
this.__rs=false;
},events:{"changeSelection":f},statics:{NO_SELECTION:1,SINGLE_SELECTION:2,SINGLE_INTERVAL_SELECTION:3,MULTIPLE_INTERVAL_SELECTION:4,MULTIPLE_INTERVAL_SELECTION_TOGGLE:5},properties:{selectionMode:{init:2,check:[1,2,3,4,5],apply:a}},members:{__rs:null,__rq:null,__rr:null,__rp:null,_applySelectionMode:function(o){this.resetSelection();
},setBatchMode:function(p){if(p){this.hasBatchModeRefCount+=1;
}else{if(this.hasBatchModeRefCount==0){throw new Error("Try to turn off batch mode althoug it was not turned on.");
}this.hasBatchModeRefCount-=1;

if(this.__rs){this.__rs=false;
this._fireChangeSelection();
}}return this.hasBatchMode();
},hasBatchMode:function(){return this.hasBatchModeRefCount>0;
},getAnchorSelectionIndex:function(){return this.__rq;
},_setAnchorSelectionIndex:function(q){this.__rq=q;
},getLeadSelectionIndex:function(){return this.__rr;
},_setLeadSelectionIndex:function(r){this.__rr=r;
},_getSelectedRangeArr:function(){return this.__rp;
},resetSelection:function(){if(!this.isSelectionEmpty()){this._resetSelection();
this._fireChangeSelection();
}},isSelectionEmpty:function(){return this.__rp.length==0;
},getSelectedCount:function(){var t=0;

for(var i=0;i<this.__rp.length;i++){var s=this.__rp[i];
t+=s.maxIndex-s.minIndex+1;
}return t;
},isSelectedIndex:function(u){for(var i=0;i<this.__rp.length;i++){var v=this.__rp[i];

if(u>=v.minIndex&&u<=v.maxIndex){return true;
}}return false;
},getSelectedRanges:function(){var w=[];

for(var i=0;i<this.__rp.length;i++){w.push({minIndex:this.__rp[i].minIndex,maxIndex:this.__rp[i].maxIndex});
}return w;
},iterateSelection:function(x,y){for(var i=0;i<this.__rp.length;i++){for(var j=this.__rp[i].minIndex;j<=this.__rp[i].maxIndex;j++){x.call(y,j);
}}},setSelectionInterval:function(z,A){var B=this.self(arguments);

switch(this.getSelectionMode()){case B.NO_SELECTION:return;
case B.SINGLE_SELECTION:if(this.isSelectedIndex(A)){return;
}z=A;
break;
case B.MULTIPLE_INTERVAL_SELECTION_TOGGLE:this.setBatchMode(true);

try{for(var i=z;i<=A;i++){if(!this.isSelectedIndex(i)){this._addSelectionInterval(i,i);
}else{this.removeSelectionInterval(i,i);
}}}catch(e){if(qx.core.Environment.get(b)==h&&qx.core.Environment.get(g)<=7){this.setBatchMode(false);
}throw e;
}finally{this.setBatchMode(false);
}this._fireChangeSelection();
return;
}this._resetSelection();
this._addSelectionInterval(z,A);
this._fireChangeSelection();
},addSelectionInterval:function(C,D){var E=qx.ui.table.selection.Model;

switch(this.getSelectionMode()){case E.NO_SELECTION:return;
case E.MULTIPLE_INTERVAL_SELECTION:case E.MULTIPLE_INTERVAL_SELECTION_TOGGLE:this._addSelectionInterval(C,D);
this._fireChangeSelection();
break;
default:this.setSelectionInterval(C,D);
break;
}},removeSelectionInterval:function(F,G){this.__rq=F;
this.__rr=G;
var H=Math.min(F,G);
var J=Math.max(F,G);
for(var i=0;i<this.__rp.length;i++){var L=this.__rp[i];

if(L.minIndex>J){break;
}else if(L.maxIndex>=H){var M=(L.minIndex>=H)&&(L.minIndex<=J);
var K=(L.maxIndex>=H)&&(L.maxIndex<=J);

if(M&&K){this.__rp.splice(i,1);
i--;
}else if(M){L.minIndex=J+1;
}else if(K){L.maxIndex=H-1;
}else{var I={minIndex:J+1,maxIndex:L.maxIndex};
this.__rp.splice(i+1,0,I);
L.maxIndex=H-1;
break;
}}}this._fireChangeSelection();
},_resetSelection:function(){this.__rp=[];
this.__rq=-1;
this.__rr=-1;
},_addSelectionInterval:function(N,O){this.__rq=N;
this.__rr=O;
var P=Math.min(N,O);
var R=Math.max(N,O);
var Q=0;

for(;Q<this.__rp.length;Q++){var S=this.__rp[Q];

if(S.minIndex>P){break;
}}this.__rp.splice(Q,0,{minIndex:P,maxIndex:R});
var T=this.__rp[0];

for(var i=1;i<this.__rp.length;i++){var S=this.__rp[i];

if(T.maxIndex+1>=S.minIndex){T.maxIndex=Math.max(T.maxIndex,S.maxIndex);
this.__rp.splice(i,1);
i--;
}else{T=S;
}}},_dumpRanges:function(){var U=d;

for(var i=0;i<this.__rp.length;i++){var V=this.__rp[i];
U+=k+V.minIndex+m+V.maxIndex+n;
}this.debug(U);
},_fireChangeSelection:function(){if(this.hasBatchMode()){this.__rs=true;
}else{this.fireEvent(l);
}}},destruct:function(){this.__rp=null;
}});
})();
(function(){var a="qx.ui.table.IHeaderRenderer";
qx.Interface.define(a,{members:{createHeaderCell:function(b){return true;
},updateHeaderCell:function(c,d){return true;
}}});
})();
(function(){var b="qx.ui.table.headerrenderer.Default",a="String";
qx.Class.define(b,{extend:qx.core.Object,implement:qx.ui.table.IHeaderRenderer,statics:{STATE_SORTED:"sorted",STATE_SORTED_ASCENDING:"sortedAscending"},properties:{toolTip:{check:a,init:null,nullable:true}},members:{createHeaderCell:function(c){var d=new qx.ui.table.headerrenderer.HeaderCell();
this.updateHeaderCell(c,d);
return d;
},updateHeaderCell:function(e,f){var g=qx.ui.table.headerrenderer.Default;
if(e.name&&e.name.translate){f.setLabel(e.name.translate());
}else{f.setLabel(e.name);
}var h=f.getToolTip();

if(this.getToolTip()!=null){if(h==null){h=new qx.ui.tooltip.ToolTip(this.getToolTip());
f.setToolTip(h);
qx.util.DisposeUtil.disposeTriggeredBy(h,f);
}else{h.setLabel(this.getToolTip());
}}e.sorted?f.addState(g.STATE_SORTED):f.removeState(g.STATE_SORTED);
e.sortedAscending?f.addState(g.STATE_SORTED_ASCENDING):f.removeState(g.STATE_SORTED_ASCENDING);
}}});
})();
(function(){var i="icon",h="label",g="String",f="sort-icon",e="_applySortIcon",d="_applyIcon",c="table-header-cell",b="qx.ui.table.headerrenderer.HeaderCell",a="_applyLabel";
qx.Class.define(b,{extend:qx.ui.container.Composite,construct:function(){qx.ui.container.Composite.call(this);
var j=new qx.ui.layout.Grid();
j.setRowFlex(0,1);
j.setColumnFlex(1,1);
j.setColumnFlex(2,1);
this.setLayout(j);
},properties:{appearance:{refine:true,init:c},label:{check:g,init:null,nullable:true,apply:a},sortIcon:{check:g,init:null,nullable:true,apply:e,themeable:true},icon:{check:g,init:null,nullable:true,apply:d}},members:{_applyLabel:function(k,l){if(k){this._showChildControl(h).setValue(k);
}else{this._excludeChildControl(h);
}},_applySortIcon:function(m,n){if(m){this._showChildControl(f).setSource(m);
}else{this._excludeChildControl(f);
}},_applyIcon:function(o,p){if(o){this._showChildControl(i).setSource(o);
}else{this._excludeChildControl(i);
}},_createChildControlImpl:function(q,r){var s;

switch(q){case h:s=new qx.ui.basic.Label(this.getLabel()).set({anonymous:true,allowShrinkX:true});
this._add(s,{row:0,column:1});
break;
case f:s=new qx.ui.basic.Image(this.getSortIcon());
s.setAnonymous(true);
this._add(s,{row:0,column:2});
break;
case i:s=new qx.ui.basic.Image(this.getIcon()).set({anonymous:true,allowShrinkX:true});
this._add(s,{row:0,column:0});
break;
}return s||qx.ui.container.Composite.prototype._createChildControlImpl.call(this,q);
}}});
})();
(function(){var a="qx.ui.table.ICellRenderer";
qx.Interface.define(a,{members:{createDataCellHtml:function(b,c){return true;
}}});
})();
(function(){var j="",i="px;",h=".qooxdoo-table-cell {",g="qooxdoo-table-cell",f="content",e='</div>',d="nowrap",c="default",b="}",a="width:",J=".qooxdoo-table-cell-right { text-align:right } ",I="css.boxmodel",H="0px 6px",G='<div class="',F="0px",E="height:",D="1px solid ",C=".qooxdoo-table-cell-bold { font-weight:bold } ",B="String",A="} ",q='>',r="mshtml",o='" ',p="ellipsis",m="content-box",n='left:',k="qx.ui.table.cellrenderer.Abstract",l="engine.name",s='" style="',t="abstract",v="none",u="hidden",x="table-column-line",w='px;',z=".qooxdoo-table-cell-italic { font-style:italic} ",y="absolute";
qx.Class.define(k,{type:t,implement:qx.ui.table.ICellRenderer,extend:qx.core.Object,construct:function(){qx.core.Object.call(this);
var K=qx.ui.table.cellrenderer.Abstract;

if(!K.__rt){var M=qx.theme.manager.Color.getInstance();
K.__rt=this.self(arguments);
var L=h+qx.bom.element.Style.compile({position:y,top:F,overflow:u,whiteSpace:d,borderRight:D+M.resolve(x),padding:H,cursor:c,textOverflow:p,userSelect:v})+A+J+z+C;

if(!(qx.core.Environment.get(l)==r)){L+=h+qx.bom.element.BoxSizing.compile(m)+b;
}K.__rt.stylesheet=qx.bom.Stylesheet.createElement(L);
}},properties:{defaultCellStyle:{init:null,check:B,nullable:true}},members:{_insetX:6+6+1,_insetY:0,_getCellClass:function(N){return g;
},_getCellStyle:function(O){return O.style||j;
},_getCellAttributes:function(P){return j;
},_getContentHtml:function(Q){return Q.value||j;
},_getCellSizeStyle:function(R,S,T,U){var V=j;

if(qx.core.Environment.get(I)==f){R-=T;
S-=U;
}V+=a+Math.max(R,0)+i;
V+=E+Math.max(S,0)+i;
return V;
},createDataCellHtml:function(W,X){X.push(G,this._getCellClass(W),s,n,W.styleLeft,w,this._getCellSizeStyle(W.styleWidth,W.styleHeight,this._insetX,this._insetY),this._getCellStyle(W),o,this._getCellAttributes(W),q+this._getContentHtml(W),e);
}}});
})();
(function(){var h="",g="number",f="Boolean",e="qx.ui.table.cellrenderer.Default",d=" qooxdoo-table-cell-bold",c=" qooxdoo-table-cell-right",b=" qooxdoo-table-cell-italic",a="string";
qx.Class.define(e,{extend:qx.ui.table.cellrenderer.Abstract,statics:{STYLEFLAG_ALIGN_RIGHT:1,STYLEFLAG_BOLD:2,STYLEFLAG_ITALIC:4,_numberFormat:null},properties:{useAutoAlign:{check:f,init:true}},members:{_getStyleFlags:function(i){if(this.getUseAutoAlign()){if(typeof i.value==g){return qx.ui.table.cellrenderer.Default.STYLEFLAG_ALIGN_RIGHT;
}}return 0;
},_getCellClass:function(j){var k=qx.ui.table.cellrenderer.Abstract.prototype._getCellClass.call(this,j);

if(!k){return h;
}var l=this._getStyleFlags(j);

if(l&qx.ui.table.cellrenderer.Default.STYLEFLAG_ALIGN_RIGHT){k+=c;
}
if(l&qx.ui.table.cellrenderer.Default.STYLEFLAG_BOLD){k+=d;
}
if(l&qx.ui.table.cellrenderer.Default.STYLEFLAG_ITALIC){k+=b;
}return k;
},_getContentHtml:function(m){return qx.bom.String.escape(this._formatValue(m));
},_formatValue:function(n){var p=n.value;
var o;

if(p==null){return h;
}
if(typeof p==a){return p;
}else if(typeof p==g){if(!qx.ui.table.cellrenderer.Default._numberFormat){qx.ui.table.cellrenderer.Default._numberFormat=new qx.util.format.NumberFormat();
qx.ui.table.cellrenderer.Default._numberFormat.setMaximumFractionDigits(2);
}var o=qx.ui.table.cellrenderer.Default._numberFormat.format(p);
}else if(p instanceof Date){o=qx.util.format.DateFormat.getDateInstance().format(p);
}else{o=p;
}return o;
}}});
})();
(function(){var a="qx.ui.table.ICellEditorFactory";
qx.Interface.define(a,{members:{createCellEditor:function(b){return true;
},getCellEditorValue:function(c){return true;
}}});
})();
(function(){var f="",e="Function",d="abstract",c="number",b="appear",a="qx.ui.table.celleditor.AbstractField";
qx.Class.define(a,{extend:qx.core.Object,implement:qx.ui.table.ICellEditorFactory,type:d,properties:{validationFunction:{check:e,nullable:true,init:null}},members:{_createEditor:function(){throw new Error("Abstract method call!");
},createCellEditor:function(g){var h=this._createEditor();
h.originalValue=g.value;

if(g.value===null||g.value===undefined){g.value=f;
}h.setValue(f+g.value);
h.addListener(b,function(){h.selectAllText();
});
return h;
},getCellEditorValue:function(i){var k=i.getValue();
var j=this.getValidationFunction();

if(j){k=j(k,i.originalValue);
}
if(typeof i.originalValue==c){k=parseFloat(k);
}return k;
}}});
})();
(function(){var c="number",b="qx.ui.table.celleditor.TextField",a="table-editor-textfield";
qx.Class.define(b,{extend:qx.ui.table.celleditor.AbstractField,members:{getCellEditorValue:function(d){var f=d.getValue();
var e=this.getValidationFunction();

if(e){f=e(f,d.originalValue);
}
if(typeof d.originalValue==c){if(f!=null){f=parseFloat(f);
}}return f;
},_createEditor:function(){var g=new qx.ui.form.TextField();
g.setAppearance(a);
return g;
}}});
})();
(function(){var k="qx.event.type.Data",j="visibilityChanged",h="orderChanged",g="visibilityChangedPre",f="__rA",e="widthChanged",d="qx.ui.table.columnmodel.Basic",c="__rz",b="headerCellRendererChanged",a="__ry";
qx.Class.define(d,{extend:qx.core.Object,construct:function(){qx.core.Object.call(this);
this.__ru=[];
this.__rv=[];
},events:{"widthChanged":k,"visibilityChangedPre":k,"visibilityChanged":k,"orderChanged":k,"headerCellRendererChanged":k},statics:{DEFAULT_WIDTH:100,DEFAULT_HEADER_RENDERER:qx.ui.table.headerrenderer.Default,DEFAULT_DATA_RENDERER:qx.ui.table.cellrenderer.Default,DEFAULT_EDITOR_FACTORY:qx.ui.table.celleditor.TextField},members:{__qB:null,__rw:null,__rv:null,__ru:null,__rx:null,__ry:null,__rz:null,__rA:null,init:function(l,m){this.__rx=[];
var q=qx.ui.table.columnmodel.Basic.DEFAULT_WIDTH;
var r=this.__ry||(this.__ry=new qx.ui.table.columnmodel.Basic.DEFAULT_HEADER_RENDERER());
var o=this.__rz||(this.__rz=new qx.ui.table.columnmodel.Basic.DEFAULT_DATA_RENDERER());
var n=this.__rA||(this.__rA=new qx.ui.table.columnmodel.Basic.DEFAULT_EDITOR_FACTORY());
this.__ru=[];
this.__rv=[];
var t;
if(m){t=m.getInitiallyHiddenColumns();
}t=t||[];

for(var u=0;u<l;u++){this.__rx[u]={width:q,headerRenderer:r,dataRenderer:o,editorFactory:n};
this.__ru[u]=u;
this.__rv[u]=u;
}this.__rw=null;
this.__qB=true;

for(var s=0;s<t.length;s++){this.setColumnVisible(t[s],false);
}this.__qB=false;

for(u=0;u<l;u++){var p={col:u,visible:this.isColumnVisible(u)};
this.fireDataEvent(g,p);
this.fireDataEvent(j,p);
}},getVisibleColumns:function(){return this.__rv!=null?this.__rv:[];
},setColumnWidth:function(v,w,y){var A=this.__rx[v].width;

if(A!=w){this.__rx[v].width=w;
var z={col:v,newWidth:w,oldWidth:A,isMouseAction:y||false};
this.fireDataEvent(e,z);
}},getColumnWidth:function(B){return this.__rx[B].width;
},setHeaderCellRenderer:function(C,D){var E=this.__rx[C].headerRenderer;

if(E!==this.__ry){E.dispose();
}this.__rx[C].headerRenderer=D;
this.fireDataEvent(b,{col:C});
},getHeaderCellRenderer:function(F){return this.__rx[F].headerRenderer;
},setDataCellRenderer:function(G,H){this.__rx[G].dataRenderer=H;
var I=this.__rx[G].dataRenderer;

if(I!==this.__rz){return I;
}return null;
},getDataCellRenderer:function(J){return this.__rx[J].dataRenderer;
},setCellEditorFactory:function(K,L){var M=this.__rx[K].headerRenderer;

if(M!==this.__rA){M.dispose();
}this.__rx[K].editorFactory=L;
},getCellEditorFactory:function(N){return this.__rx[N].editorFactory;
},_getColToXPosMap:function(){if(this.__rw==null){this.__rw={};

for(var Q=0;Q<this.__ru.length;Q++){var P=this.__ru[Q];
this.__rw[P]={overX:Q};
}
for(var O=0;O<this.__rv.length;O++){var P=this.__rv[O];
this.__rw[P].visX=O;
}}return this.__rw;
},getVisibleColumnCount:function(){return this.__rv!=null?this.__rv.length:0;
},getVisibleColumnAtX:function(R){return this.__rv[R];
},getVisibleX:function(S){return this._getColToXPosMap()[S].visX;
},getOverallColumnCount:function(){return this.__ru.length;
},getOverallColumnAtX:function(T){return this.__ru[T];
},getOverallX:function(U){return this._getColToXPosMap()[U].overX;
},isColumnVisible:function(V){return (this._getColToXPosMap()[V].visX!=null);
},setColumnVisible:function(W,X){if(X!=this.isColumnVisible(W)){if(X){var be=this._getColToXPosMap();
var bb=be[W].overX;

if(bb==null){throw new Error("Showing column failed: "+W+". The column is not added to this TablePaneModel.");
}var bc;

for(var x=bb+1;x<this.__ru.length;x++){var bd=this.__ru[x];
var Y=be[bd].visX;

if(Y!=null){bc=Y;
break;
}}if(bc==null){bc=this.__rv.length;
}this.__rv.splice(bc,0,W);
}else{var ba=this.getVisibleX(W);
this.__rv.splice(ba,1);
}this.__rw=null;
if(!this.__qB){var bf={col:W,visible:X};
this.fireDataEvent(g,bf);
this.fireDataEvent(j,bf);
}}},moveColumn:function(bg,bh){this.__qB=true;
var bk=this.__ru[bg];
var bi=this.isColumnVisible(bk);

if(bi){this.setColumnVisible(bk,false);
}this.__ru.splice(bg,1);
this.__ru.splice(bh,0,bk);
this.__rw=null;

if(bi){this.setColumnVisible(bk,true);
}this.__qB=false;
var bj={col:bk,fromOverXPos:bg,toOverXPos:bh};
this.fireDataEvent(h,bj);
},setColumnsOrder:function(bl){if(bl.length==this.__ru.length){this.__qB=true;
var bo=new Array(bl.length);

for(var bm=0;bm<this.__ru.length;bm++){var bn=this.isColumnVisible(bm);
bo[bm]=bn;

if(bn){this.setColumnVisible(bm,false);
}}this.__ru=qx.lang.Array.clone(bl);
this.__rw=null;
for(var bm=0;bm<this.__ru.length;bm++){if(bo[bm]){this.setColumnVisible(bm,true);
}}this.__qB=false;
this.fireDataEvent(h);
}else{throw new Error("setColumnsOrder: Invalid number of column positions given, expected "+this.__ru.length+", got "+bl.length);
}}},destruct:function(){for(var i=0;i<this.__rx.length;i++){this.__rx[i].headerRenderer.dispose();
this.__rx[i].dataRenderer.dispose();
this.__rx[i].editorFactory.dispose();
}this.__ru=this.__rv=this.__rx=this.__rw=null;
this._disposeObjects(a,c,f);
}});
})();
(function(){var k="",j="Number",h='</div>',g='" ',f="paneUpdated",e='<div>',d="</div>",c="overflow: hidden;",b="qx.event.type.Data",a="paneReloadsData",E="div",D='style="',C="_applyMaxCacheLines",B="qx.ui.table.pane.Pane",A="width: 100%;",z="qx.event.type.Event",w="_applyVisibleRowCount",v='>',u="line-height: ",t="appear",r='class="',s="width:100%;",p="px;",q='<div ',n="'>",o="_applyFirstVisibleRow",l="<div style='",m=";position:relative;";
qx.Class.define(B,{extend:qx.ui.core.Widget,construct:function(F){qx.ui.core.Widget.call(this);
this.__rB=F;
this.__rC=0;
this.__qO=0;
this.__rD=[];
},events:{"paneReloadsData":b,"paneUpdated":z},properties:{firstVisibleRow:{check:j,init:0,apply:o},visibleRowCount:{check:j,init:0,apply:w},maxCacheLines:{check:j,init:1000,apply:C},allowShrinkX:{refine:true,init:false}},members:{__qO:null,__rC:null,__rB:null,__rE:null,__qL:null,__qK:null,__rD:null,__rF:0,_applyFirstVisibleRow:function(G,H){this.updateContent(false,G-H);
},_applyVisibleRowCount:function(I,J){this.updateContent(true);
},_getContentHint:function(){return {width:this.getPaneScroller().getTablePaneModel().getTotalWidth(),height:400};
},getPaneScroller:function(){return this.__rB;
},getTable:function(){return this.__rB.getTable();
},setFocusedCell:function(K,L,M){if(K!=this.__qK||L!=this.__qL){var N=this.__qL;
this.__qK=K;
this.__qL=L;
if(L!=N&&!M){if(N!==null){this.updateContent(false,null,N,true);
}
if(L!==null){this.updateContent(false,null,L,true);
}}}},onSelectionChanged:function(){this.updateContent(false,null,null,true);
},onFocusChanged:function(){this.updateContent(false,null,null,true);
},setColumnWidth:function(O,P){this.updateContent(true);
},onColOrderChanged:function(){this.updateContent(true);
},onPaneModelChanged:function(){this.updateContent(true);
},onTableModelDataChanged:function(Q,R,S,T){this.__rG();
var V=this.getFirstVisibleRow();
var U=this.getVisibleRowCount();

if(R==-1||R>=V&&Q<V+U){this.updateContent();
}},onTableModelMetaDataChanged:function(){this.updateContent(true);
},_applyMaxCacheLines:function(W,X){if(this.__rF>=W&&W!==-1){this.__rG();
}},__rG:function(){this.__rD=[];
this.__rF=0;
},__rH:function(Y,ba,bb){if(!ba&&!bb&&this.__rD[Y]){return this.__rD[Y];
}else{return null;
}},__rI:function(bc,bd,be,bf){var bg=this.getMaxCacheLines();

if(!be&&!bf&&!this.__rD[bc]&&bg>0){this._applyMaxCacheLines(bg);
this.__rD[bc]=bd;
this.__rF+=1;
}},updateContent:function(bh,bi,bj,bk){if(bh){this.__rG();
}if(bi&&Math.abs(bi)<=Math.min(10,this.getVisibleRowCount())){this._scrollContent(bi);
}else if(bk&&!this.getTable().getAlwaysUpdateCells()){this._updateRowStyles(bj);
}else{this._updateAllRows();
}},_updateRowStyles:function(bl){var bp=this.getContentElement().getDomElement();

if(!bp||!bp.firstChild){this._updateAllRows();
return;
}var bt=this.getTable();
var bn=bt.getSelectionModel();
var bq=bt.getTableModel();
var bu=bt.getDataRowRenderer();
var bo=bp.firstChild.childNodes;
var bs={table:bt};
var bv=this.getFirstVisibleRow();
var y=0;
var bm=bo.length;

if(bl!=null){var br=bl-bv;

if(br>=0&&br<bm){bv=bl;
y=br;
bm=br+1;
}else{return;
}}
for(;y<bm;y++,bv++){bs.row=bv;
bs.selected=bn.isSelectedIndex(bv);
bs.focusedRow=(this.__qL==bv);
bs.rowData=bq.getRowData(bv);
bu.updateDataRowElement(bs,bo[y]);
}},_getRowsHtml:function(bw,bx){var bD=this.getTable();
var bG=bD.getSelectionModel();
var bA=bD.getTableModel();
var bB=bD.getTableColumnModel();
var bV=this.getPaneScroller().getTablePaneModel();
var bL=bD.getDataRowRenderer();
bA.prefetchRows(bw,bw+bx-1);
var bS=bD.getRowHeight();
var bU=bV.getColumnCount();
var bC=0;
var bz=[];
for(var x=0;x<bU;x++){var bY=bV.getColumnAtX(x);
var bF=bB.getColumnWidth(bY);
bz.push({col:bY,xPos:x,editable:bA.isColumnEditable(bY),focusedCol:this.__qK==bY,styleLeft:bC,styleWidth:bF});
bC+=bF;
}var bX=[];
var ca=false;

for(var bE=bw;bE<bw+bx;bE++){var bH=bG.isSelectedIndex(bE);
var bK=(this.__qL==bE);
var bP=this.__rH(bE,bH,bK);

if(bP){bX.push(bP);
continue;
}var by=[];
var bR={table:bD};
bR.styleHeight=bS;
bR.row=bE;
bR.selected=bH;
bR.focusedRow=bK;
bR.rowData=bA.getRowData(bE);

if(!bR.rowData){ca=true;
}by.push(q);
var bO=bL.getRowAttributes(bR);

if(bO){by.push(bO);
}var bN=bL.getRowClass(bR);

if(bN){by.push(r,bN,g);
}var bM=bL.createRowStyle(bR);
bM+=m+bL.getRowHeightStyle(bS)+s;

if(bM){by.push(D,bM,g);
}by.push(v);
var bW=false;

for(x=0;x<bU&&!bW;x++){var bI=bz[x];

for(var bT in bI){bR[bT]=bI[bT];
}var bY=bR.col;
bR.value=bA.getValue(bY,bE);
var bJ=bB.getDataCellRenderer(bY);
bR.style=bJ.getDefaultCellStyle();
bW=bJ.createDataCellHtml(bR,by)||false;
}by.push(h);
var bQ=by.join(k);
this.__rI(bE,bQ,bH,bK);
bX.push(bQ);
}this.fireDataEvent(a,ca);
return bX.join(k);
},_scrollContent:function(cb){var cc=this.getContentElement().getDomElement();

if(!(cc&&cc.firstChild)){this._updateAllRows();
return;
}var cl=cc.firstChild;
var cd=cl.childNodes;
var cj=this.getVisibleRowCount();
var ci=this.getFirstVisibleRow();
var cg=this.getTable().getTableModel();
var cm=0;
cm=cg.getRowCount();
if(ci+cj>cm){this._updateAllRows();
return;
}var cn=cb<0?cj+cb:0;
var ce=cb<0?0:cj-cb;

for(i=Math.abs(cb)-1;i>=0;i--){var ch=cd[cn];

try{cl.removeChild(ch);
}catch(co){break;
}}if(!this.__rE){this.__rE=document.createElement(E);
}var ck=e;
ck+=this._getRowsHtml(ci+ce,Math.abs(cb));
ck+=h;
this.__rE.innerHTML=ck;
var cf=this.__rE.firstChild.childNodes;
if(cb>0){for(var i=cf.length-1;i>=0;i--){var ch=cf[0];
cl.appendChild(ch);
}}else{for(var i=cf.length-1;i>=0;i--){var ch=cf[cf.length-1];
cl.insertBefore(ch,cl.firstChild);
}}if(this.__qL!==null){this._updateRowStyles(this.__qL-cb);
this._updateRowStyles(this.__qL);
}this.fireEvent(f);
},_updateAllRows:function(){var cs=this.getContentElement().getDomElement();

if(!cs){this.addListenerOnce(t,arguments.callee,this);
return;
}var cy=this.getTable();
var cv=cy.getTableModel();
var cx=this.getPaneScroller().getTablePaneModel();
var cw=cx.getColumnCount();
var cp=cy.getRowHeight();
var ct=this.getFirstVisibleRow();
var cq=this.getVisibleRowCount();
var cz=cv.getRowCount();

if(ct+cq>cz){cq=Math.max(0,cz-ct);
}var cr=cx.getTotalWidth();
var cu;
if(cq>0){cu=[l,A,(cy.getForceLineHeight()?u+cp+p:k),c,n,this._getRowsHtml(ct,cq),d];
}else{cu=[];
}var cA=cu.join(k);
cs.innerHTML=cA;
this.setWidth(cr);
this.__rC=cw;
this.__qO=cq;
this.fireEvent(f);
}},destruct:function(){this.__rE=this.__rB=this.__rD=null;
}});
})();
(function(){var e="first",d="last",c="hovered",b="__rB",a="qx.ui.table.pane.Header";
qx.Class.define(a,{extend:qx.ui.core.Widget,construct:function(f){qx.ui.core.Widget.call(this);
this._setLayout(new qx.ui.layout.HBox());
this.__jW=new qx.ui.core.Blocker(this);
this.__rB=f;
},members:{__rB:null,__rJ:null,__rK:null,__jW:null,getPaneScroller:function(){return this.__rB;
},getTable:function(){return this.__rB.getTable();
},getBlocker:function(){return this.__jW;
},onColOrderChanged:function(){this._updateContent(true);
},onPaneModelChanged:function(){this._updateContent(true);
},onTableModelMetaDataChanged:function(){this._updateContent();
},setColumnWidth:function(g,h,i){var j=this.getHeaderWidgetAtColumn(g);

if(j!=null){j.setWidth(h);
}},setMouseOverColumn:function(k){if(k!=this.__rK){if(this.__rK!=null){var l=this.getHeaderWidgetAtColumn(this.__rK);

if(l!=null){l.removeState(c);
}}
if(k!=null){this.getHeaderWidgetAtColumn(k).addState(c);
}this.__rK=k;
}},getHeaderWidgetAtColumn:function(m){var n=this.getPaneScroller().getTablePaneModel().getX(m);
return this._getChildren()[n];
},showColumnMoveFeedback:function(o,x){var s=this.getContainerLocation();

if(this.__rJ==null){var y=this.getTable();
var p=this.getPaneScroller().getTablePaneModel().getX(o);
var r=this._getChildren()[p];
var t=y.getTableModel();
var v=y.getTableColumnModel();
var w={xPos:p,col:o,name:t.getColumnName(o),table:y};
var u=v.getHeaderCellRenderer(o);
var q=u.createHeaderCell(w);
var z=r.getBounds();
q.setWidth(z.width);
q.setHeight(z.height);
q.setZIndex(1000000);
q.setOpacity(0.8);
q.setLayoutProperties({top:s.top});
this.getApplicationRoot().add(q);
this.__rJ=q;
}this.__rJ.setLayoutProperties({left:s.left+x});
this.__rJ.show();
},hideColumnMoveFeedback:function(){if(this.__rJ!=null){this.__rJ.destroy();
this.__rJ=null;
}},isShowingColumnMoveFeedback:function(){return this.__rJ!=null;
},_updateContent:function(A){var K=this.getTable();
var E=K.getTableModel();
var H=K.getTableColumnModel();
var J=this.getPaneScroller().getTablePaneModel();
var M=this._getChildren();
var F=J.getColumnCount();
var I=E.getSortColumnIndex();
if(A){this._cleanUpCells();
}var B={};
B.sortedAscending=E.isSortAscending();

for(var x=0;x<F;x++){var D=J.getColumnAtX(x);

if(D===undefined){continue;
}var L=H.getColumnWidth(D);
var G=H.getHeaderCellRenderer(D);
B.xPos=x;
B.col=D;
B.name=E.getColumnName(D);
B.editable=E.isColumnEditable(D);
B.sorted=(D==I);
B.table=K;
var C=M[x];
if(C==null){C=G.createHeaderCell(B);
C.set({width:L});
this._add(C);
}else{G.updateHeaderCell(B,C);
}if(x===0){C.addState(e);
C.removeState(d);
}else if(x===F-1){C.removeState(e);
C.addState(d);
}else{C.removeState(e);
C.removeState(d);
}}},_cleanUpCells:function(){var O=this._getChildren();

for(var x=O.length-1;x>=0;x--){var N=O[x];
N.destroy();
}}},destruct:function(){this.__jW.dispose();
this._disposeObjects(b);
}});
})();
(function(){var o="Boolean",n="resize-line",m="mousedown",l="qx.event.type.Data",k="mouseup",j="qx.ui.table.pane.CellEvent",i="scroll",h="focus-indicator",g="excluded",d="scrollbar-y",bq="table-scroller-focus-indicator",bp="visible",bo="mousemove",bn="header",bm="editing",bl="click",bk="modelChanged",bj="scrollbar-x",bi="cellClick",bh="os.scrollBarOverlayed",v="pane",w="__jg",t="mouseout",u="changeHorizontalScrollBarVisible",r="__rU",s="bottom",p="_applyScrollTimeout",q="changeScrollX",C="_applyTablePaneModel",D="Integer",M="dblclick",J="dataEdited",U="__rM",P="__rN",bd="mousewheel",ba="interval",F="qx.ui.table.pane.Scroller",bg="__rS",bf="_applyShowCellFocusIndicator",be="y",E="__rQ",H="resize",I="vertical",L="changeScrollY",N="appear",Q="table-scroller",W="beforeSort",bc="cellDblclick",y="horizontal",z="losecapture",G="contextmenu",T="__rP",S="__rO",R="__rR",Y="col-resize",X="disappear",O="_applyVerticalScrollBarVisible",V="_applyHorizontalScrollBarVisible",a="cellContextmenu",bb="close",A="changeTablePaneModel",B="x",K="qx.ui.table.pane.Model",b="__rT",c="changeVerticalScrollBarVisible";
qx.Class.define(F,{extend:qx.ui.core.Widget,include:qx.ui.core.scroll.MScrollBarFactory,construct:function(br){qx.ui.core.Widget.call(this);
this.__rL=br;
var bs=new qx.ui.layout.Grid();
bs.setColumnFlex(0,1);
bs.setRowFlex(1,1);
this._setLayout(bs);
this.__rM=this._showChildControl(bn);
this.__rN=this._showChildControl(v);
this.__rO=new qx.ui.container.Composite(new qx.ui.layout.HBox()).set({minWidth:0});
this._add(this.__rO,{row:0,column:0,colSpan:2});
this.__rP=new qx.ui.table.pane.Clipper();
this.__rP.add(this.__rM);
this.__rP.addListener(z,this._onChangeCaptureHeader,this);
this.__rP.addListener(bo,this._onMousemoveHeader,this);
this.__rP.addListener(m,this._onMousedownHeader,this);
this.__rP.addListener(k,this._onMouseupHeader,this);
this.__rP.addListener(bl,this._onClickHeader,this);
this.__rO.add(this.__rP,{flex:1});
this.__rQ=new qx.ui.table.pane.Clipper();
this.__rQ.add(this.__rN);
this.__rQ.addListener(bd,this._onMousewheel,this);
this.__rQ.addListener(bo,this._onMousemovePane,this);
this.__rQ.addListener(m,this._onMousedownPane,this);
this.__rQ.addListener(k,this._onMouseupPane,this);
this.__rQ.addListener(bl,this._onClickPane,this);
this.__rQ.addListener(G,this._onContextMenu,this);
this.__rQ.addListener(M,this._onDblclickPane,this);
this.__rQ.addListener(H,this._onResizePane,this);
if(qx.core.Environment.get(bh)){this.__rR=new qx.ui.container.Composite();
this.__rR.setLayout(new qx.ui.layout.Canvas());
this.__rR.add(this.__rQ,{edge:0});
this._add(this.__rR,{row:1,column:0});
}else{this._add(this.__rQ,{row:1,column:0});
}this.__rS=this._showChildControl(bj);
this.__rT=this._showChildControl(d);
this.__rU=this.getChildControl(h);
this.initShowCellFocusIndicator();
this.getChildControl(n).hide();
this.addListener(t,this._onMouseout,this);
this.addListener(N,this._onAppear,this);
this.addListener(X,this._onDisappear,this);
this.__jg=new qx.event.Timer();
this.__jg.addListener(ba,this._oninterval,this);
this.initScrollTimeout();
},statics:{MIN_COLUMN_WIDTH:10,RESIZE_REGION_RADIUS:5,CLICK_TOLERANCE:5,HORIZONTAL_SCROLLBAR:1,VERTICAL_SCROLLBAR:2},events:{"changeScrollY":l,"changeScrollX":l,"cellClick":j,"cellDblclick":j,"cellContextmenu":j,"beforeSort":l},properties:{horizontalScrollBarVisible:{check:o,init:false,apply:V,event:u},verticalScrollBarVisible:{check:o,init:false,apply:O,event:c},tablePaneModel:{check:K,apply:C,event:A},liveResize:{check:o,init:false},focusCellOnMouseMove:{check:o,init:false},selectBeforeFocus:{check:o,init:false},showCellFocusIndicator:{check:o,init:true,apply:bf},contextMenuFromDataCellsOnly:{check:o,init:true},resetSelectionOnHeaderClick:{check:o,init:true},scrollTimeout:{check:D,init:100,apply:p},appearance:{refine:true,init:Q}},members:{__qO:null,__rL:null,__rV:null,__rW:null,__rX:null,__rY:null,__sa:null,__sb:null,__sc:null,__sd:null,__se:null,__sf:null,__sg:null,__sh:null,__si:false,__sj:null,__sk:null,__sl:null,__qK:null,__qL:null,__sm:null,__sn:null,__so:null,__rS:null,__rT:null,__rM:null,__rP:null,__rN:null,__rQ:null,__rR:null,__rU:null,__rO:null,__jg:null,getPaneInsetRight:function(){var bv=this.getTopRightWidget();
var bw=bv&&bv.isVisible()&&bv.getBounds()?bv.getBounds().width+bv.getMarginLeft()+bv.getMarginRight():0;
var bu=this.__rT;
var bt=this.getVerticalScrollBarVisible()?this.getVerticalScrollBarWidth()+bu.getMarginLeft()+bu.getMarginRight():0;
return Math.max(bw,bt);
},setPaneWidth:function(bx){if(this.isVerticalScrollBarVisible()){bx+=this.getPaneInsetRight();
}this.setWidth(bx);
},_createChildControlImpl:function(by,bz){var bA;

switch(by){case bn:bA=(this.getTable().getNewTablePaneHeader())(this);
break;
case v:bA=(this.getTable().getNewTablePane())(this);
break;
case h:bA=new qx.ui.table.pane.FocusIndicator(this);
bA.setUserBounds(0,0,0,0);
bA.setZIndex(1000);
bA.addListener(k,this._onMouseupFocusIndicator,this);
this.__rQ.add(bA);
bA.show();
bA.setDecorator(null);
break;
case n:bA=new qx.ui.core.Widget();
bA.setUserBounds(0,0,0,0);
bA.setZIndex(1000);
this.__rQ.add(bA);
break;
case bj:bA=this._createScrollBar(y).set({minWidth:0,alignY:s});
bA.addListener(i,this._onScrollX,this);

if(this.__rR!=null){bA.setMinHeight(qx.bom.element.Overflow.DEFAULT_SCROLLBAR_WIDTH);
this.__rR.add(bA,{bottom:0,right:0,left:0});
}else{this._add(bA,{row:2,column:0});
}break;
case d:bA=this._createScrollBar(I);
bA.addListener(i,this._onScrollY,this);

if(this.__rR!=null){bA.setMinWidth(qx.bom.element.Overflow.DEFAULT_SCROLLBAR_WIDTH);
this.__rR.add(bA,{right:0,bottom:0,top:0});
}else{this._add(bA,{row:1,column:1});
}break;
}return bA||qx.ui.core.Widget.prototype._createChildControlImpl.call(this,by);
},_applyHorizontalScrollBarVisible:function(bB,bC){this.__rS.setVisibility(bB?bp:g);
},_applyVerticalScrollBarVisible:function(bD,bE){this.__rT.setVisibility(bD?bp:g);
},_applyTablePaneModel:function(bF,bG){if(bG!=null){bG.removeListener(bk,this._onPaneModelChanged,this);
}bF.addListener(bk,this._onPaneModelChanged,this);
},_applyShowCellFocusIndicator:function(bH,bI){if(bH){this.__rU.setDecorator(bq);
this._updateFocusIndicator();
}else{if(this.__rU){this.__rU.setDecorator(null);
}}},getScrollY:function(){return this.__rT.getPosition();
},setScrollY:function(scrollY,bJ){this.__rT.scrollTo(scrollY);

if(bJ){this._updateContent();
}},getScrollX:function(){return this.__rS.getPosition();
},setScrollX:function(scrollX){this.__rS.scrollTo(scrollX);
},getTable:function(){return this.__rL;
},onColVisibilityChanged:function(){this.updateHorScrollBarMaximum();
this._updateFocusIndicator();
},setColumnWidth:function(bK,bL){this.__rM.setColumnWidth(bK,bL);
this.__rN.setColumnWidth(bK,bL);
var bM=this.getTablePaneModel();
var x=bM.getX(bK);

if(x!=-1){this.updateHorScrollBarMaximum();
this._updateFocusIndicator();
}},onColOrderChanged:function(){this.__rM.onColOrderChanged();
this.__rN.onColOrderChanged();
this.updateHorScrollBarMaximum();
},onTableModelDataChanged:function(bN,bO,bP,bQ){this.__rN.onTableModelDataChanged(bN,bO,bP,bQ);
var bR=this.getTable().getTableModel().getRowCount();

if(bR!=this.__qO){this.updateVerScrollBarMaximum();

if(this.getFocusedRow()>=bR){if(bR==0){this.setFocusedCell(null,null);
}else{this.setFocusedCell(this.getFocusedColumn(),bR-1);
}}this.__qO=bR;
}},onSelectionChanged:function(){this.__rN.onSelectionChanged();
},onFocusChanged:function(){this.__rN.onFocusChanged();
},onTableModelMetaDataChanged:function(){this.__rM.onTableModelMetaDataChanged();
this.__rN.onTableModelMetaDataChanged();
},_onPaneModelChanged:function(){this.__rM.onPaneModelChanged();
this.__rN.onPaneModelChanged();
},_onResizePane:function(){this.updateHorScrollBarMaximum();
this.updateVerScrollBarMaximum();
this._updateContent();
this.__rM._updateContent();
this.__rL._updateScrollBarVisibility();
},updateHorScrollBarMaximum:function(){var bV=this.__rQ.getInnerSize();

if(!bV){return ;
}var bT=this.getTablePaneModel().getTotalWidth();
var bU=this.__rS;

if(bV.width<bT){var bS=Math.max(0,bT-bV.width);
bU.setMaximum(bS);
bU.setKnobFactor(bV.width/bT);
var bW=bU.getPosition();
bU.setPosition(Math.min(bW,bS));
}else{bU.setMaximum(0);
bU.setKnobFactor(1);
bU.setPosition(0);
}},updateVerScrollBarMaximum:function(){var cf=this.__rQ.getInnerSize();

if(!cf){return ;
}var cd=this.getTable().getTableModel();
var bY=cd.getRowCount();

if(this.getTable().getKeepFirstVisibleRowComplete()){bY+=1;
}var bX=this.getTable().getRowHeight();
var cb=bY*bX;
var ce=this.__rT;

if(cf.height<cb){var ca=Math.max(0,cb-cf.height);
ce.setMaximum(ca);
ce.setKnobFactor(cf.height/cb);
var cc=ce.getPosition();
ce.setPosition(Math.min(cc,ca));
}else{ce.setMaximum(0);
ce.setKnobFactor(1);
ce.setPosition(0);
}},onKeepFirstVisibleRowCompleteChanged:function(){this.updateVerScrollBarMaximum();
this._updateContent();
},_onAppear:function(){this._startInterval(this.getScrollTimeout());
},_onDisappear:function(){this._stopInterval();
},_onScrollX:function(e){var cg=e.getData();
this.fireDataEvent(q,cg,e.getOldData());
this.__rP.scrollToX(cg);
this.__rQ.scrollToX(cg);
},_onScrollY:function(e){this.fireDataEvent(L,e.getData(),e.getOldData());
this._postponedUpdateContent();
},_onMousewheel:function(e){var ch=this.getTable();

if(!ch.getEnabled()){return;
}var ck=e.getWheelDelta(be);
if(ck>0&&ck<1){ck=1;
}else if(ck<0&&ck>-1){ck=-1;
}this.__rT.scrollBySteps(ck);
ck=e.getWheelDelta(B);
if(ck>0&&ck<1){ck=1;
}else if(ck<0&&ck>-1){ck=-1;
}this.__rS.scrollBySteps(ck);
if(this.__sk&&this.getFocusCellOnMouseMove()){this._focusCellAtPagePos(this.__sk,this.__sl);
}var cj=this.__rT.getPosition();
var ci=this.__rT.getMaximum();
if(ck<0&&cj<=0||ck>0&&cj>=ci){return;
}e.stop();
},__sp:function(cl){var cq=this.getTable();
var cr=this.__rM.getHeaderWidgetAtColumn(this.__se);
var cm=cr.getSizeHint().minWidth;
var co=Math.max(cm,this.__sg+cl-this.__sf);

if(this.getLiveResize()){var cn=cq.getTableColumnModel();
cn.setColumnWidth(this.__se,co,true);
}else{this.__rM.setColumnWidth(this.__se,co,true);
var cp=this.getTablePaneModel();
this._showResizeLine(cp.getColumnLeft(this.__se)+co);
}this.__sf+=co-this.__sg;
this.__sg=co;
},__sq:function(cs){var ct=qx.ui.table.pane.Scroller.CLICK_TOLERANCE;

if(this.__rM.isShowingColumnMoveFeedback()||cs>this.__sd+ct||cs<this.__sd-ct){this.__sa+=cs-this.__sd;
this.__rM.showColumnMoveFeedback(this.__rY,this.__sa);
var cu=this.__rL.getTablePaneScrollerAtPageX(cs);

if(this.__sc&&this.__sc!=cu){this.__sc.hideColumnMoveFeedback();
}
if(cu!=null){this.__sb=cu.showColumnMoveFeedback(cs);
}else{this.__sb=null;
}this.__sc=cu;
this.__sd=cs;
}},_onMousemoveHeader:function(e){var cB=this.getTable();

if(!cB.getEnabled()){return;
}var cC=false;
var cv=null;
var cz=e.getDocumentLeft();
var cA=e.getDocumentTop();
this.__sk=cz;
this.__sl=cA;

if(this.__se!=null){this.__sp(cz);
cC=true;
e.stopPropagation();
}else if(this.__rY!=null){this.__sq(cz);
e.stopPropagation();
}else{var cw=this._getResizeColumnForPageX(cz);

if(cw!=-1){cC=true;
}else{var cy=cB.getTableModel();
var cD=this._getColumnForPageX(cz);

if(cD!=null&&cy.isColumnSortable(cD)){cv=cD;
}}}var cx=cC?Y:null;
this.getApplicationRoot().setGlobalCursor(cx);
this.setCursor(cx);
this.__rM.setMouseOverColumn(cv);
},_onMousemovePane:function(e){var cE=this.getTable();

if(!cE.getEnabled()){return;
}var cG=e.getDocumentLeft();
var cH=e.getDocumentTop();
this.__sk=cG;
this.__sl=cH;
var cF=this._getRowForPagePos(cG,cH);

if(cF!=null&&this._getColumnForPageX(cG)!=null){if(this.getFocusCellOnMouseMove()){this._focusCellAtPagePos(cG,cH);
}}this.__rM.setMouseOverColumn(null);
},_onMousedownHeader:function(e){if(!this.getTable().getEnabled()){return;
}var cJ=e.getDocumentLeft();
var cK=this._getResizeColumnForPageX(cJ);

if(cK!=-1){this._startResizeHeader(cK,cJ);
e.stop();
}else{var cI=this._getColumnForPageX(cJ);

if(cI!=null){this._startMoveHeader(cI,cJ);
e.stop();
}}},_startResizeHeader:function(cL,cM){var cN=this.getTable().getTableColumnModel();
this.__se=cL;
this.__sf=cM;
this.__sg=cN.getColumnWidth(this.__se);
this.__rP.capture();
},_startMoveHeader:function(cO,cP){this.__rY=cO;
this.__sd=cP;
this.__sa=this.getTablePaneModel().getColumnLeft(cO);
this.__rP.capture();
},_onMousedownPane:function(e){var cT=this.getTable();

if(!cT.getEnabled()){return;
}
if(cT.isEditing()){cT.stopEditing();
}var cQ=e.getDocumentLeft();
var cS=e.getDocumentTop();
var cV=this._getRowForPagePos(cQ,cS);
var cU=this._getColumnForPageX(cQ);

if(cV!==null){this.__sh={row:cV,col:cU};
this.__si=false;
var cR=this.getSelectBeforeFocus();

if(cR){cT.getSelectionManager().handleMouseDown(cV,e);
}if(!this.getFocusCellOnMouseMove()){this._focusCellAtPagePos(cQ,cS);
}
if(!cR){cT.getSelectionManager().handleMouseDown(cV,e);
}}},_onMouseupFocusIndicator:function(e){if(this.__sh&&!this.__si&&!this.isEditing()&&this.__rU.getRow()==this.__sh.row&&this.__rU.getColumn()==this.__sh.col){this.fireEvent(bi,qx.ui.table.pane.CellEvent,[this,e,this.__sh.row,this.__sh.col],true);
this.__si=true;
}else if(!this.isEditing()){this._onMousedownPane(e);
}},_onChangeCaptureHeader:function(e){if(this.__se!=null){this._stopResizeHeader();
}
if(this.__rY!=null){this._stopMoveHeader();
}},_stopResizeHeader:function(){var cW=this.getTable().getTableColumnModel();
if(!this.getLiveResize()){this._hideResizeLine();
cW.setColumnWidth(this.__se,this.__sg,true);
}this.__se=null;
this.__rP.releaseCapture();
this.getApplicationRoot().setGlobalCursor(null);
this.setCursor(null);
if(this.isEditing()){var cX=this.__sm.getBounds().height;
this.__sm.setUserBounds(0,0,this.__sg,cX);
}},_stopMoveHeader:function(){var dd=this.getTable().getTableColumnModel();
var de=this.getTablePaneModel();
this.__rM.hideColumnMoveFeedback();

if(this.__sc){this.__sc.hideColumnMoveFeedback();
}
if(this.__sb!=null){var dg=de.getFirstColumnX()+de.getX(this.__rY);
var dc=this.__sb;

if(dc!=dg&&dc!=dg+1){var df=dd.getVisibleColumnAtX(dg);
var db=dd.getVisibleColumnAtX(dc);
var da=dd.getOverallX(df);
var cY=(db!=null)?dd.getOverallX(db):dd.getOverallColumnCount();

if(cY>da){cY--;
}dd.moveColumn(da,cY);
this._updateFocusIndicator();
}}this.__rY=null;
this.__sb=null;
this.__rP.releaseCapture();
},_onMouseupPane:function(e){var dh=this.getTable();

if(!dh.getEnabled()){return;
}var di=this._getRowForPagePos(e.getDocumentLeft(),e.getDocumentTop());

if(di!=-1&&di!=null&&this._getColumnForPageX(e.getDocumentLeft())!=null){dh.getSelectionManager().handleMouseUp(di,e);
}},_onMouseupHeader:function(e){var dj=this.getTable();

if(!dj.getEnabled()){return;
}
if(this.__se!=null){this._stopResizeHeader();
this.__sj=true;
e.stop();
}else if(this.__rY!=null){this._stopMoveHeader();
e.stop();
}},_onClickHeader:function(e){if(this.__sj){this.__sj=false;
return;
}var dp=this.getTable();

if(!dp.getEnabled()){return;
}var dm=dp.getTableModel();
var dn=e.getDocumentLeft();
var dl=this._getResizeColumnForPageX(dn);

if(dl==-1){var ds=this._getColumnForPageX(dn);

if(ds!=null&&dm.isColumnSortable(ds)){var dk=dm.getSortColumnIndex();
var dq=(ds!=dk)?true:!dm.isSortAscending();
var dr={column:ds,ascending:dq,clickEvent:e};

if(this.fireDataEvent(W,dr,null,true)){dm.sortByColumn(ds,dq);

if(this.getResetSelectionOnHeaderClick()){dp.getSelectionModel().resetSelection();
}}}}e.stop();
},_onClickPane:function(e){var dt=this.getTable();

if(!dt.getEnabled()){return;
}var dw=e.getDocumentLeft();
var dx=e.getDocumentTop();
var du=this._getRowForPagePos(dw,dx);
var dv=this._getColumnForPageX(dw);

if(du!=null&&dv!=null){dt.getSelectionManager().handleClick(du,e);

if(this.__rU.isHidden()||(this.__sh&&!this.__si&&!this.isEditing()&&du==this.__sh.row&&dv==this.__sh.col)){this.fireEvent(bi,qx.ui.table.pane.CellEvent,[this,e,du,dv],true);
this.__si=true;
}}},_onContextMenu:function(e){var dB=e.getDocumentLeft();
var dC=e.getDocumentTop();
var dz=this._getRowForPagePos(dB,dC);
var dA=this._getColumnForPageX(dB);
if(dz===null&&this.getContextMenuFromDataCellsOnly()){return;
}
if(!this.getShowCellFocusIndicator()||dz===null||(this.__sh&&dz==this.__sh.row&&dA==this.__sh.col)){this.fireEvent(a,qx.ui.table.pane.CellEvent,[this,e,dz,dA],true);
var dy=this.getTable().getContextMenu();

if(dy){if(dy.getChildren().length>0){dy.openAtMouse(e);
}else{dy.exclude();
}e.preventDefault();
}}},_onContextMenuOpen:function(e){},_onDblclickPane:function(e){var dE=e.getDocumentLeft();
var dF=e.getDocumentTop();
this._focusCellAtPagePos(dE,dF);
this.startEditing();
var dD=this._getRowForPagePos(dE,dF);

if(dD!=-1&&dD!=null){this.fireEvent(bc,qx.ui.table.pane.CellEvent,[this,e,dD],true);
}},_onMouseout:function(e){var dG=this.getTable();

if(!dG.getEnabled()){return;
}if(this.__se==null){this.setCursor(null);
this.getApplicationRoot().setGlobalCursor(null);
}this.__rM.setMouseOverColumn(null);
if(this.getFocusCellOnMouseMove()){this.__rL.setFocusedCell();
}},_showResizeLine:function(x){var dI=this._showChildControl(n);
var dH=dI.getWidth();
var dJ=this.__rQ.getBounds();
dI.setUserBounds(x-Math.round(dH/2),0,dH,dJ.height);
},_hideResizeLine:function(){this._excludeChildControl(n);
},showColumnMoveFeedback:function(dK){var dT=this.getTablePaneModel();
var dS=this.getTable().getTableColumnModel();
var dN=this.__rN.getContainerLocation().left;
var dR=dT.getColumnCount();
var dO=0;
var dM=0;
var dW=dN;

for(var dL=0;dL<dR;dL++){var dP=dT.getColumnAtX(dL);
var dU=dS.getColumnWidth(dP);

if(dK<dW+dU/2){break;
}dW+=dU;
dO=dL+1;
dM=dW-dN;
}var dQ=this.__rQ.getContainerLocation().left;
var dV=this.__rQ.getBounds().width;
var scrollX=dQ-dN;
dM=qx.lang.Number.limit(dM,scrollX+2,scrollX+dV-1);
this._showResizeLine(dM);
return dT.getFirstColumnX()+dO;
},hideColumnMoveFeedback:function(){this._hideResizeLine();
},_focusCellAtPagePos:function(dX,dY){var eb=this._getRowForPagePos(dX,dY);

if(eb!=-1&&eb!=null){var ea=this._getColumnForPageX(dX);
this.__rL.setFocusedCell(ea,eb);
}},setFocusedCell:function(ec,ed){if(!this.isEditing()){this.__rN.setFocusedCell(ec,ed,this.__rW);
this.__qK=ec;
this.__qL=ed;
this._updateFocusIndicator();
}},getFocusedColumn:function(){return this.__qK;
},getFocusedRow:function(){return this.__qL;
},scrollCellVisible:function(ee,ef){var ep=this.getTablePaneModel();
var eg=ep.getX(ee);

if(eg!=-1){var em=this.__rQ.getInnerSize();

if(!em){return;
}var en=this.getTable().getTableColumnModel();
var ej=ep.getColumnLeft(ee);
var eq=en.getColumnWidth(ee);
var eh=this.getTable().getRowHeight();
var er=ef*eh;
var scrollX=this.getScrollX();
var scrollY=this.getScrollY();
var eo=Math.min(ej,ej+eq-em.width);
var el=ej;
this.setScrollX(Math.max(eo,Math.min(el,scrollX)));
var ei=er+eh-em.height;

if(this.getTable().getKeepFirstVisibleRowComplete()){ei+=eh;
}var ek=er;
this.setScrollY(Math.max(ei,Math.min(ek,scrollY)),true);
}},isEditing:function(){return this.__sm!=null;
},startEditing:function(){var ew=this.getTable();
var eu=ew.getTableModel();
var ey=this.__qK;

if(!this.isEditing()&&(ey!=null)&&eu.isColumnEditable(ey)){var ez=this.__qL;
var es=this.getTablePaneModel().getX(ey);
var et=eu.getValue(ey,ez);
this.scrollCellVisible(es,ez);
this.__sn=ew.getTableColumnModel().getCellEditorFactory(ey);
var ev={col:ey,row:ez,xPos:es,value:et,table:ew};
this.__sm=this.__sn.createCellEditor(ev);
if(this.__sm===null){return false;
}else if(this.__sm instanceof qx.ui.window.Window){this.__sm.setModal(true);
this.__sm.setShowClose(false);
this.__sm.addListener(bb,this._onCellEditorModalWindowClose,this);
var f=ew.getModalCellEditorPreOpenFunction();

if(f!=null){f(this.__sm,ev);
}this.__sm.open();
}else{var ex=this.__rU.getInnerSize();
this.__sm.setUserBounds(0,0,ex.width,ex.height);
this.__rU.addListener(m,function(e){this.__sh={row:this.__qL,col:this.__qK};
e.stopPropagation();
},this);
this.__rU.add(this.__sm);
this.__rU.addState(bm);
this.__rU.setKeepActive(false);
this.__rU.setDecorator(bq);
this.__sm.focus();
this.__sm.activate();
}return true;
}return false;
},stopEditing:function(){if(!this.getShowCellFocusIndicator()){this.__rU.setDecorator(null);
}this.flushEditor();
this.cancelEditing();
},flushEditor:function(){if(this.isEditing()){var eB=this.__sn.getCellEditorValue(this.__sm);
var eA=this.getTable().getTableModel().getValue(this.__qK,this.__qL);
this.getTable().getTableModel().setValue(this.__qK,this.__qL,eB);
this.__rL.focus();
this.__rL.fireDataEvent(J,{row:this.__qL,col:this.__qK,oldValue:eA,value:eB});
}},cancelEditing:function(){if(this.isEditing()&&!this.__sm.pendingDispose){if(this._cellEditorIsModalWindow){this.__sm.destroy();
this.__sm=null;
this.__sn=null;
this.__sm.pendingDispose=true;
}else{this.__rU.removeState(bm);
this.__rU.setKeepActive(true);
this.__sm.destroy();
this.__sm=null;
this.__sn=null;
}}},_onCellEditorModalWindowClose:function(e){this.stopEditing();
},_getColumnForPageX:function(eC){var eF=this.getTable().getTableColumnModel();
var eG=this.getTablePaneModel();
var eE=eG.getColumnCount();
var eI=this.__rN.getContentLocation().left;

for(var x=0;x<eE;x++){var eD=eG.getColumnAtX(x);
var eH=eF.getColumnWidth(eD);
eI+=eH;

if(eC<eI){return eD;
}}return null;
},_getResizeColumnForPageX:function(eJ){var eN=this.getTable().getTableColumnModel();
var eO=this.getTablePaneModel();
var eM=eO.getColumnCount();
var eQ=this.__rM.getContainerLocation().left;
var eK=qx.ui.table.pane.Scroller.RESIZE_REGION_RADIUS;

for(var x=0;x<eM;x++){var eL=eO.getColumnAtX(x);
var eP=eN.getColumnWidth(eL);
eQ+=eP;

if(eJ>=(eQ-eK)&&eJ<=(eQ+eK)){return eL;
}}return -1;
},_getRowForPagePos:function(eR,eS){var eT=this.__rN.getContentLocation();

if(eR<eT.left||eR>eT.right){return null;
}
if(eS>=eT.top&&eS<=eT.bottom){var eU=this.getTable().getRowHeight();
var scrollY=this.__rT.getPosition();

if(this.getTable().getKeepFirstVisibleRowComplete()){scrollY=Math.floor(scrollY/eU)*eU;
}var eX=scrollY+eS-eT.top;
var fa=Math.floor(eX/eU);
var eY=this.getTable().getTableModel();
var eV=eY.getRowCount();
return (fa<eV)?fa:null;
}var eW=this.__rM.getContainerLocation();

if(eS>=eW.top&&eS<=eW.bottom&&eR<=eW.right){return -1;
}return null;
},setTopRightWidget:function(fb){var fc=this.__so;

if(fc!=null){this.__rO.remove(fc);
}
if(fb!=null){this.__rO.add(fb);
}this.__so=fb;
},getTopRightWidget:function(){return this.__so;
},getHeader:function(){return this.__rM;
},getTablePane:function(){return this.__rN;
},getVerticalScrollBarWidth:function(){var fd=this.__rT;
return fd.isVisible()?(fd.getSizeHint().width||0):0;
},getNeededScrollBars:function(fe,ff){var fo=this.__rT;
var fs=fo.getSizeHint().width+fo.getMarginLeft()+fo.getMarginRight();
var fu=this.__rS;
var ft=fu.getSizeHint().height+fu.getMarginTop()+fu.getMarginBottom();
var fm=this.__rQ.getInnerSize();
var fg=fm?fm.width:0;

if(this.getVerticalScrollBarVisible()){fg+=fs;
}var fr=fm?fm.height:0;

if(this.getHorizontalScrollBarVisible()){fr+=ft;
}var fn=this.getTable().getTableModel();
var fk=fn.getRowCount();
var fh=this.getTablePaneModel().getTotalWidth();
var fp=this.getTable().getRowHeight()*fk;
var fj=false;
var fq=false;

if(fh>fg){fj=true;

if(fp>fr-ft){fq=true;
}}else if(fp>fr){fq=true;

if(!ff&&(fh>fg-fs)){fj=true;
}}var fl=qx.ui.table.pane.Scroller.HORIZONTAL_SCROLLBAR;
var fi=qx.ui.table.pane.Scroller.VERTICAL_SCROLLBAR;
return ((fe||fj)?fl:0)|((ff||!fq)?0:fi);
},getPaneClipper:function(){return this.__rQ;
},_applyScrollTimeout:function(fv,fw){this._startInterval(fv);
},_startInterval:function(fx){this.__jg.setInterval(fx);
this.__jg.start();
},_stopInterval:function(){this.__jg.stop();
},_postponedUpdateContent:function(){this._updateContent();
},_oninterval:qx.event.GlobalError.observeMethod(function(){if(this.__rW&&!this.__rN._layoutPending){this.__rW=false;
this._updateContent();
}}),_updateContent:function(){var fC=this.__rQ.getInnerSize();

if(!fC){return;
}var fF=fC.height;
var scrollX=this.__rS.getPosition();
var scrollY=this.__rT.getPosition();
var fz=this.getTable().getRowHeight();
var fA=Math.floor(scrollY/fz);
var fE=this.__rN.getFirstVisibleRow();
this.__rN.setFirstVisibleRow(fA);
var fB=Math.ceil(fF/fz);
var fy=0;
var fD=this.getTable().getKeepFirstVisibleRowComplete();

if(!fD){fB++;
fy=scrollY%fz;
}this.__rN.setVisibleRowCount(fB);

if(fA!=fE){this._updateFocusIndicator();
}this.__rQ.scrollToX(scrollX);
if(!fD){this.__rQ.scrollToY(fy);
}},_updateFocusIndicator:function(){var fG=this.getTable();

if(!fG.getEnabled()){return;
}this.__rU.moveToCell(this.__qK,this.__qL);
}},destruct:function(){this._stopInterval();
var fH=this.getTablePaneModel();

if(fH){fH.dispose();
}this.__sh=this.__so=this.__rL=null;
this._disposeObjects(bg,b,T,E,r,U,P,S,w,R);
},defer:function(){qx.core.Environment.add(bh,qx.bom.element.Overflow.scollBarOverlayed);
}});
})();
(function(){var a="qx.ui.table.pane.Clipper";
qx.Class.define(a,{extend:qx.ui.container.Composite,construct:function(){qx.ui.container.Composite.call(this,new qx.ui.layout.Grow());
this.setMinWidth(0);
},members:{scrollToX:function(b){this.getContentElement().scrollToX(b,false);
},scrollToY:function(c){this.getContentElement().scrollToY(c,true);
}}});
})();
(function(){var g="Integer",f="Escape",d="keypress",c="Enter",b="excluded",a="qx.ui.table.pane.FocusIndicator";
qx.Class.define(a,{extend:qx.ui.container.Composite,construct:function(h){qx.ui.container.Composite.call(this);
this.__sr=h;
this.setKeepActive(true);
this.addListener(d,this._onKeyPress,this);
},properties:{visibility:{refine:true,init:b},row:{check:g,nullable:true},column:{check:g,nullable:true}},members:{__sr:null,_onKeyPress:function(e){var i=e.getKeyIdentifier();

if(i!==f&&i!==c){e.stopPropagation();
}},moveToCell:function(j,k){if(!this.__sr.getShowCellFocusIndicator()&&!this.__sr.getTable().getTableModel().isColumnEditable(j)){this.exclude();
return;
}else{this.show();
}
if(j==null){this.hide();
this.setRow(null);
this.setColumn(null);
}else{var l=this.__sr.getTablePaneModel().getX(j);

if(l==-1){this.hide();
this.setRow(null);
this.setColumn(null);
}else{var q=this.__sr.getTable();
var o=q.getTableColumnModel();
var p=this.__sr.getTablePaneModel();
var n=this.__sr.getTablePane().getFirstVisibleRow();
var m=q.getRowHeight();
this.setUserBounds(p.getColumnLeft(j)-2,(k-n)*m-2,o.getColumnWidth(j)+3,m+3);
this.show();
this.setRow(k);
this.setColumn(j);
}}}},destruct:function(){this.__sr=null;
}});
})();
(function(){var b="Integer",a="qx.ui.table.pane.CellEvent";
qx.Class.define(a,{extend:qx.event.type.Mouse,properties:{row:{check:b,nullable:true},column:{check:b,nullable:true}},members:{init:function(c,d,e,f){d.clone(this);
this.setBubbles(false);

if(e!=null){this.setRow(e);
}else{this.setRow(c._getRowForPagePos(this.getDocumentLeft(),this.getDocumentTop()));
}
if(f!=null){this.setColumn(f);
}else{this.setColumn(c._getColumnForPageX(this.getDocumentLeft()));
}},clone:function(g){var h=qx.event.type.Mouse.prototype.clone.call(this,g);
h.set({row:this.getRow(),column:this.getColumn()});
return h;
}}});
})();
(function(){var h="headerCellRendererChanged",g="visibilityChangedPre",f="Number",e="qx.event.type.Event",d="_applyFirstColumnX",c="Integer",b="qx.ui.table.pane.Model",a="_applyMaxColumnCount";
qx.Class.define(b,{extend:qx.core.Object,construct:function(i){qx.core.Object.call(this);
this.setTableColumnModel(i);
},events:{"modelChanged":e},statics:{EVENT_TYPE_MODEL_CHANGED:"modelChanged"},properties:{firstColumnX:{check:c,init:0,apply:d},maxColumnCount:{check:f,init:-1,apply:a}},members:{__ss:null,__st:null,_applyFirstColumnX:function(j,k){this.__ss=null;
this.fireEvent(qx.ui.table.pane.Model.EVENT_TYPE_MODEL_CHANGED);
},_applyMaxColumnCount:function(l,m){this.__ss=null;
this.fireEvent(qx.ui.table.pane.Model.EVENT_TYPE_MODEL_CHANGED);
},setTableColumnModel:function(n){if(this.__st){this.__st.removeListener(g,this._onColVisibilityChanged,this);
this.__st.removeListener(h,this._onColVisibilityChanged,this);
}this.__st=n;
this.__st.addListener(g,this._onColVisibilityChanged,this);
this.__st.addListener(h,this._onHeaderCellRendererChanged,this);
this.__ss=null;
},_onColVisibilityChanged:function(o){this.__ss=null;
this.fireEvent(qx.ui.table.pane.Model.EVENT_TYPE_MODEL_CHANGED);
},_onHeaderCellRendererChanged:function(p){this.fireEvent(qx.ui.table.pane.Model.EVENT_TYPE_MODEL_CHANGED);
},getColumnCount:function(){if(this.__ss==null){var q=this.getFirstColumnX();
var s=this.getMaxColumnCount();
var r=this.__st.getVisibleColumnCount();

if(s==-1||(q+s)>r){this.__ss=r-q;
}else{this.__ss=s;
}}return this.__ss;
},getColumnAtX:function(t){var u=this.getFirstColumnX();
return this.__st.getVisibleColumnAtX(u+t);
},getX:function(v){var w=this.getFirstColumnX();
var y=this.getMaxColumnCount();
var x=this.__st.getVisibleX(v)-w;

if(x>=0&&(y==-1||x<y)){return x;
}else{return -1;
}},getColumnLeft:function(z){var C=0;
var B=this.getColumnCount();

for(var x=0;x<B;x++){var A=this.getColumnAtX(x);

if(A==z){return C;
}C+=this.__st.getColumnWidth(A);
}return -1;
},getTotalWidth:function(){var D=0;
var E=this.getColumnCount();

for(var x=0;x<E;x++){var F=this.getColumnAtX(x);
D+=this.__st.getColumnWidth(F);
}return D;
}},destruct:function(){if(this.__st){this.__st.removeListener(g,this._onColVisibilityChanged,this);
this.__st.removeListener(h,this._onColVisibilityChanged,this);
}this.__st=null;
}});
})();
(function(){var s="",r="==",q=">",p="between",o="<",n="regex",m="!between",l=">=",k="!=",j="<=",c="font-weight",h=";",f="text-align",b='g',a=":",e="qx.ui.table.cellrenderer.Conditional",d="color",g="font-style";
qx.Class.define(e,{extend:qx.ui.table.cellrenderer.Default,construct:function(t,u,v,w){qx.ui.table.cellrenderer.Default.call(this);
this.numericAllowed=[r,k,q,o,l,j];
this.betweenAllowed=[p,m];
this.conditions=[];
this.__su=t||s;
this.__sv=u||s;
this.__sw=v||s;
this.__sx=w||s;
},members:{__su:null,__sv:null,__sw:null,__sx:null,__sy:function(x,y){if(x[1]!=null){y[f]=x[1];
}
if(x[2]!=null){y[d]=x[2];
}
if(x[3]!=null){y[g]=x[3];
}
if(x[4]!=null){y[c]=x[4];
}},addNumericCondition:function(z,A,B,C,D,E,F){var G=null;

if(qx.lang.Array.contains(this.numericAllowed,z)){if(A!=null){G=[z,B,C,D,E,A,F];
}}
if(G!=null){this.conditions.push(G);
}else{throw new Error("Condition not recognized or value is null!");
}},addBetweenCondition:function(H,I,J,K,L,M,N,O){if(qx.lang.Array.contains(this.betweenAllowed,H)){if(I!=null&&J!=null){var P=[H,K,L,M,N,I,J,O];
}}
if(P!=null){this.conditions.push(P);
}else{throw new Error("Condition not recognized or value1/value2 is null!");
}},addRegex:function(Q,R,S,T,U,V){if(Q!=null){var W=[n,R,S,T,U,Q,V];
}
if(W!=null){this.conditions.push(W);
}else{throw new Error("regex cannot be null!");
}},_getCellStyle:function(X){if(!this.conditions.length){return X.style||s;
}var bd=X.table.getTableModel();
var i;
var bf;
var Y;
var bb={"text-align":this.__su,"color":this.__sv,"font-style":this.__sw,"font-weight":this.__sx};

for(i in this.conditions){bf=false;

if(qx.lang.Array.contains(this.numericAllowed,this.conditions[i][0])){if(this.conditions[i][6]==null){Y=X.value;
}else{Y=bd.getValueById(this.conditions[i][6],X.row);
}
switch(this.conditions[i][0]){case r:if(Y==this.conditions[i][5]){bf=true;
}break;
case k:if(Y!=this.conditions[i][5]){bf=true;
}break;
case q:if(Y>this.conditions[i][5]){bf=true;
}break;
case o:if(Y<this.conditions[i][5]){bf=true;
}break;
case l:if(Y>=this.conditions[i][5]){bf=true;
}break;
case j:if(Y<=this.conditions[i][5]){bf=true;
}break;
}}else if(qx.lang.Array.contains(this.betweenAllowed,this.conditions[i][0])){if(this.conditions[i][7]==null){Y=X.value;
}else{Y=bd.getValueById(this.conditions[i][7],X.row);
}
switch(this.conditions[i][0]){case p:if(Y>=this.conditions[i][5]&&Y<=this.conditions[i][6]){bf=true;
}break;
case m:if(Y<this.conditions[i][5]&&Y>this.conditions[i][6]){bf=true;
}break;
}}else if(this.conditions[i][0]==n){if(this.conditions[i][6]==null){Y=X.value;
}else{Y=bd.getValueById(this.conditions[i][6],X.row);
}var ba=new RegExp(this.conditions[i][5],b);
bf=ba.test(Y);
}if(bf==true){this.__sy(this.conditions[i],bb);
}}var be=[];

for(var bc in bb){if(bb[bc]){be.push(bc,a,bb[bc],h);
}}return be.join(s);
}},destruct:function(){this.numericAllowed=this.betweenAllowed=this.conditions=null;
}});
})();
(function(){var c="qooxdoo-table-cell",b="qx.ui.table.cellrenderer.Html",a="";
qx.Class.define(b,{extend:qx.ui.table.cellrenderer.Conditional,members:{_getContentHtml:function(d){return (d.value||a);
},_getCellClass:function(e){return c;
}}});
})();
(function(){var m="addTrack",k="beforeClose",j="Do you really want to close the Window and throw away edited entries in: %1",h="window title",g="Adding %1 from %2",f="askMsgBox text",d="PoiReport.destruct failed: ",c="__current",b="askMsgBox title",a="initPoiConfig",y="What to do with unsaved Entries?",x="AjaxAnimator",w="PoiReport.destroyPopup failed: ",v="22/apps/utilities-notes.png",u="appear",t="track.poi.PoiReportWindow",s="putTrackHolder",r="dummy",q=", ",p="POI Report",n="reloadPoiConfig",o="addGps";
qx.Class.define(t,{extend:track.util.WindowWithHelpIcon,construct:function(z){track.util.WindowWithHelpIcon.call(this);
this.trackGui=z;
this.setUseMoveFrame(true);
this.setResizable(true);
this.setLayout(new qx.ui.layout.Grow());
this.setCaption(this.trc(h,p));
this.setIcon(xbGetQxIcon(v));
this.poiConfigManager=null;
this.addTrackEventFunkArr=[];
this.poiReportTabView=null;
this.preventBeforeClose=false;
},members:{position:function(){this.moveTo(10,65);
},_newGPSDataArrived:function(A,B){if(!B.isPoi()){this.info("Poi._newGPSDataArrived: !isPoi");
return;
}if(this.poiReportTabView!=null)this.poiReportTabView.addGpsData(B,A,true);
},onContainerConfigUpdate:function(C,D){this.poiConfigManager=C;
this.removeAll();
this.poiReportTabView=new track.poi.PoiReportTabView(this.trackGui);
this.add(this.poiReportTabView);
this.poiReportTabView.addListener(n,function(e){var E=e.getData();
this.hideLocations(E.getContainerId());
this.loadLocations(E.getContainerId());
},this);
this.poiReportTabView.addListener(a,function(e){var F=e.getData();
this.loadLocations(F.getContainerId());
},this);
this.poiReportTabView.updatePages(C);
},putTrackHolder:function(G){if(G.getTrackName()==c)return;

try{var H=G.getDevice().getLoginName();
var I=G.getTrackName();
this.trackGui.startAjaxAnimator(this.trc(x,g,I,H,40000));
var J=G.getFifoGpsQueue().getArray();
this.info("Adding "+J.length+" locations of "+I+" from "+H);

if(this.poiReportTabView!=null)this.poiReportTabView.addGpsDataArr(J,G);
}catch(K){this.trackGui.errorMsgBoxDeveloper(s,K);
}},loadLocations:function(L){this.info("Loading locations for "+L);
var N=this.getFriendOfs();
this._removeTrackListeners();

for(var i=0,l=N.length;i<l;i++){var P=N[i].getDevice();
var M=P.getLoginName();
var O=P.getTrack(L);
this._addTrackListener(P);
this.trackGui.getTrackLocations(M,L);
}},hideLocations:function(Q){this.info("Hiding locations for "+Q);
var S=this.getFriendOfs();
this._removeTrackListeners();
this._removePoi();

for(var i=0,l=S.length;i<l;i++){var U=S[i].getDevice();
var R=U.getLoginName();
var T=U.getTrack(Q);
this.poiReportTabView.clearTable(T);
}},centerMap:function(V){this.trackGui.watchee.getMapManager().zoomAndCenterMap(V);

for(var i=0,X=V.length;i<X;i++){var W=V[i];
}},getFriendOfs:function(){var ba=net.watchee.BuddyPermissionTO.PERMISSION_POI;
var Y=true;
var bb=this.trackGui.watchee.getBuddyManager().getFriendOfList(ba,Y);
return bb;
},_cleanup:function(){this._removePoi();
this._removeTrackListeners();
this.removeAll();
this.poiReportTabView=null;
},create:function(){this.addListener(k,function(e){if(this.preventBeforeClose||this.poiReportTabView==null){return ;
}this.info("ReportPrintWindow BeforeClose");
var bc=this.poiReportTabView.getUnsavedPages();

if(bc.length>0){e.preventDefault();
this.trackGui.askMsgBox(this.trc(b,y),this.trc(f,j,bc.join(q)),function(bd){if(bd){this.preventBeforeClose=false;
this._cleanup();
this.close();
}},this);
}else{this._cleanup();
}},this);
this.addListener(u,function(){this.trackGui.queryPoiContainerConfigFromDb(this.onContainerConfigUpdate,this,r);
},this);
this.trackGui.watchee.getEventManager().addListener(o,function(be){this._newGPSDataArrived(be.getData().track,be.getData().gpsData);
},this);
return this;
},_addTrackListener:function(bf){var bg=bf.getLoginName();

if(!this.addTrackEventFunkArr[bg]){this.addTrackEventFunkArr[bg]=bf.getEventManager().addListener(m,function(bh){var bi=bh.getData().track;
var bj=bh.getData().taskNameInfo;

if(bj!=null){if(bj.taskName!=org.xmlBlaster.util.PropTO.VALUE_TASK_NAMED_GETTRACK){this.info("PoiReportWindow.updateTable taskName="+bj.taskName+" ignored");
return;
}
if(bj.currTrackIndex<bj.countTracks-1){this.info("PoiReportWindow.updateTable currTrackIndex="+bj.currTrackIndex+"/"+bj.countTracks+" ignored");
return;
}}
if(bi.locationsAreLoaded()){this.info("PoiReportWindow.addTrack taskName="+bj.taskName+": got locations");
this.putTrackHolder(bi);
}else{this.info("PoiReportWindow.addTrack taskName="+bj.taskName+": NO locations");
}},this);
}},_removeTrackListeners:function(){try{var bl=this.getFriendOfs();

for(var i=0,l=bl.length;i<l;i++){var bn=bl[i].getDevice();
var bk=bn.getLoginName();

if(this.addTrackEventFunkArr[bk]){var bm=this.addTrackEventFunkArr[bk];
bn.getEventManager().removeListener(m,bm);
delete this.addTrackEventFunkArr[bk];
}}}catch(bo){this.trackGui.errorMsgBoxDeveloper(d+bo);
}},_removePoi:function(){if(this.trackGui!=null&&this.trackGui.watchee!=null&&this.trackGui.watchee.getMapManager()!=null){this.trackGui.watchee.getMapManager().removeHighlightPoi();
this.trackGui.watchee.getMapManager().removePoi();
}},destroyPopup:function(){try{this.trackGui.getMyRoot().remove(this);
this._removePoi();
this._removeTrackListeners();
this.close();
this.trackGui=null;
}catch(bp){if(this.trackGui!=null){this.trackGui.errorMsgBoxDeveloper(w+bp);
}}}}});
})();
(function(){var k="qx.event.type.Data",j="track.poi.PoiReportTabView",h="init",g="initPoiConfig",f=" but tabview was not yet created",e="reloadPoiConfig",d="reload",c="received poi '",b="' from ",a="showMe";
qx.Class.define(j,{extend:track.util.EnhancedTabView,construct:function(m){track.util.EnhancedTabView.call(this);
this.trackGui=m;
},events:{"reloadPoiConfig":k,"initPoiConfig":k},members:{addGpsData:function(n,o,p){var s=o.getDevice().getLoginName();
var t=n.getContainerId();

if(t==null||t.length==0){return;
}var q=this.getPage(t);

if(q==null){this.trackGui.errorMsgBoxDeveloper(c+t+b+s+f);
return;
}else{this.info("received poi from "+s);
var r=q.getPoiReportTable();

if(r!=null)r.addRow(n,o);

if(p)this.highlightPage(t);
}},addGpsDataArr:function(u,v){for(var i=0,l=u.length;i<l;i++){var w=u[i];

if(!w.isInitialUpdate){this.addGpsData(w,v);
}}},clearTable:function(x){var z=x.getTrackName();
var y=this.getPage(z);

if(y!=null)y.getPoiReportTable().removeRows();
},updatePages:function(A){var B=A.getPoiConfigArr();

for(var i=0;i<B.length;i++){this._createPage(B[i]);
}},getUnsavedPages:function(){var D=[];
var C=this.getPages();

for(var i=0;i<C.length;i++){var status=C[i].getSaveStatus();

if(status)D.push(C[i].poiConfig.getMenuLabel());
}return D;
},_createPage:function(E){var F=new track.poi.PoiReportTabViewPage(this.trackGui,E);
this.putPage(E.getContainerId(),F);
F.addListener(a,function(){this.setSelection([F]);
},this);
F.addListener(d,function(){this.fireDataEvent(e,E);
},this);
F.addListener(h,function(){this.fireDataEvent(g,E);
},this);
}}});
})();
(function(){var f="qx.event.type.Event",e="showMe",d="track.poi.PoiReportTabViewPage",c="appear",b="init",a="poi.reloadButton.show";
qx.Class.define(d,{extend:track.util.EnhancedTabViewPage,construct:function(g,h){track.util.EnhancedTabViewPage.call(this,h.getMenuLabel(),h.getIconWithPath());
this.setIconSize(16);
this.setLayout(new qx.ui.layout.VBox(2));
this.poiConfig=h;
this.trackGui=g;
this.poiReportToolbar=null;
this.poiReportFilter=null;
this.poiReportTable=null;
this.setShowReloadButton(xbProperties.getBoolean(a,false));
this.addListener(c,function(){if(!this.isFilled()){this.fill();
this.fireEvent(b);
}},this);
},events:{"init":f,"showMe":f,"reload":f},members:{fill:function(){this.poiReportTable=new track.poi.PoiReportTable(this.poiConfig,this.trackGui);
this.poiReportToolbar=new track.poi.PoiReportToolbar(this.trackGui,this.poiReportTable);
this.poiReportFilter=new track.poi.PoiReportFilter(this.trackGui,this.poiReportTable);
this.add(this.poiReportToolbar);
this.add(this.poiReportFilter);
this.add(this.poiReportTable,{flex:1});
this.poiReportTable.addListener(e,function(){this.fireEvent(e);
},this);
},getPoiReportTable:function(){return this.poiReportTable;
},isFilled:function(){return this.poiReportTable!=null;
},getSaveStatus:function(){if(this.poiReportToolbar==null){return false;
}else{return this.poiReportToolbar.getSaveStatus();
}}}});
})();
(function(){var bs="1*",br="",bq="</a>",bp="_highlightOnMap",bo="_showIcon",bn="_date",bm="Done",bl="id: ",bk="Header",bj="status",X="_row",W="Processing",V="Open",U="<a href=",T=" width: ",S="qx.event.type.Event",R="16/void.png",Q="dataEdited",P=" height ",O="_latlon",bz="_",bA="_address",bx="click",by="_loginName",bv=" type: ",bw="' target='_blank'>",bt="<a href='",bu="Processing|",bB="qx.event.type.Data",bC=" / ",bc="http://",bb="16/apps/office-calendar.png",be="changeSelection",bd="16/poi/mic.png",bg=" file is: ",bf=" target='picture'>",bi="medium",bh="images/marker",ba="showMe",Y="16/poi/hospital.png",a="bold",b="Your browser does not support playing native audio, but you can download the file",c="DateField",d="orange",f="doneEditing",g=" type ",h="_blank",j="16/poi/crosshair.png",k="string",m=" target='signature'>",bG="Column is editable, use double-click to edit",bF="Done|",bE="16/apps/media-audio-player.png",bD="cellClick",bK="red",bJ="deletePressed",bI="Row",bH=" ",bM=";",bL="16/xSMS_read_16.png",B="Location ID ",C="Tooltip",z=" target='audio'>",A="16/apps/preferences-clock.png",F="blue",G=" menuLabel: ",D="images/marker/",E="16/poi/media-image.png",x="right",y="hint",u="Open|",t="://",w=" sec: ",v="16/devices/camera-photo.png",q="green",p="short",s="Map",r="track.poi.PoiReportTable",o=" containerTitle: ",n="selectedGPSDataArr",K="Delete",L="16/poi/crosshair_gray.png",M="16/poi/purple01.png",N="Icon",H="TimeField",I=" ContainerId: ",J="Dummy";
qx.Class.define(r,{extend:qx.ui.table.Table,construct:function(bN,bO){this.trackGui=bO;
bN.addPoiAttribConfig(X,this.trc(bk,bI),net.watchee.PoiAttribConfig.INT);
bN.addPoiAttribConfig(bo,this.trc(bk,N),net.watchee.PoiAttribConfig.BOOL,true);
bN.addPoiAttribConfig(bp,this.trc(bk,s),net.watchee.PoiAttribConfig.IMAGE);
this.poiConfig=bN;
this.idArr=bN.getIdArr();
this.typeArr=bN.getTypeArr();
this.labelArr=bN.getLabelArr();
this.editableArr=bN.getEditableArr();
this.model=new track.poi.EnhancedTableModel();
this.model.setColumns(this.labelArr,this.idArr);
var bP=this.idArr.indexOf(bn);
this.model.setSecondarySortColumnIndex(bP);
this.setWidth(1100);
var bT={tableColumnModel:function(bX){return new qx.ui.table.columnmodel.Resize(bX);
}};
qx.ui.table.Table.call(this,this.model,bT);
this.editedLocationsArr=new Array();
this.rowIndex=0;
this._lastPinkCrosshairIndex=-1;
var open=this.trc(bj,V);
var bR=this.trc(bj,W);
var bV=this.trc(bj,bm);
this.info("Tranlations: Open->"+open+" Processing->"+bR+" done->"+bV);
this.statusTransaltionsENtoForeign=new org.xmlBlaster.util.Hashtable();
this.statusTransaltionsENtoForeign.put(V,open);
this.statusTransaltionsENtoForeign.put(W,bR);
this.statusTransaltionsENtoForeign.put(bm,bV);
this.tcm=this.getTableColumnModel();
this.setAdditionalStatusBarText(I+this.poiConfig.getContainerId()+G+this.poiConfig.getMenuLabel()+o+this.poiConfig.getContainerTitle());
var bU=this.model.getColumnCount();

if(this.idArr.length==bU&&this.typeArr.length==bU&&this.labelArr.length==bU&&this.editableArr.length==bU){this.colCount=bU;
}else{this.error("colCount not matching");
this.colCount=0;
}for(var i=0;i<this.colCount;++i){var bW=this.idArr[i];

if(bW==null){continue;
}var bQ=this.typeArr[i];
var bS=this.editableArr[i];
this._configureColumn(i,bW,bQ,bS);
}this.getSelectionModel().setSelectionMode(qx.ui.table.selection.Model.MULTIPLE_INTERVAL_SELECTION);
this.getSelectionModel().addListener(be,function(e){var bY=this.getSelectionAsGPSDataArr();
this.fireDataEvent(n,bY);
},this);
this.addListener(Q,function(e){var ca=e.getData();
this.onDataEdited(ca);
},this);
this.addListener(bD,function(e){this._handleCellClick(e);
},this);
},events:{"selectedGPSDataArr":bB,"deletePressed":S,"doneEditing":S},members:{getStatusTransaltionsENtoForeign:function(){return this.statusTransaltionsENtoForeign;
},getEditedLocationsArr:function(){var cd=this.getFocusedColumn();
var cg=this.getFocusedRow();

if(cg>=0&&cd>=0){if(this.isEditing()){var cf=this.model.getValue(cd,cg);
this.stopEditing();
var cb=this.model.getValue(cd,cg);
var cc={row:cg,col:cd,value:cb,oldValue:cf};
this.onDataEdited(cc);
}}this.resetCellFocus();
return this.editedLocationsArr;
},onDataEdited:function(ch){var cp=ch;
var cj=cp.value;
var co=cp.oldValue;

if(co==cj)return;
var cr=cp.row;
var ck=cp.col;
var cq=this.idArr[ck];
var cl=this.__sz(cr);

if(cl!=null){var cm=cl.getUniqueId();

if(cq.indexOf(net.watchee.GPSData.KEY_STATUS_POI)==0){var cn=cj;
cj=this.statusTransaltionsENtoForeign.getKeyOfValue(cj,cj);
this.info("onDataEdited: en="+cj+" <- de="+cn);
}var ci={locationId:cm,id:cq,value:cj};
this.editedLocationsArr.push(ci);
}this.fireEvent(f);
},getIndexByUniqueId:function(cs){var ct=this.model.getData();

for(var cx=0;cx<ct.length;cx++){var cv=ct[cx];
var cu=cv.originalData._gpsData;
var cw=cu.getUniqueId();

if(cs==cw)return cx;
}return -1;
},removeRowByUniqueId:function(cy){var cz=this.getIndexByUniqueId(cy);

if(cz==-1)return null;
var cA=this.model.getData()[cz].originalData._gpsData;
var cB=1;
this.model.removeRows(cz,cB);
return cA;
},flushEditedLocationsArr:function(){this.editedLocationsArr=[];
},_onKeyPress:function(cC){var cD=cC.getKeyIdentifier();
if(cD==K){this.fireEvent(bJ);
}},getLabelArr:function(){return this.labelArr;
},getContainerId:function(){return this.poiConfig.getContainerId();
},getPoiConfig:function(){return this.poiConfig;
},getSelectionAsGPSDataArr:function(){if(this.getSelectionModel().isSelectionEmpty())return [];
var cE=[];
this.getSelectionModel().iterateSelection(function(cF){var cG=this.__sz(cF);

if(cG!=null){cG._selectionIndex=cF;
cE.push(cG);
}},this);
return cE;
},getSelectionAsRowMapArr:function(){if(this.getSelectionModel().isSelectionEmpty())return [];
var cH=[];
this.getSelectionModel().iterateSelection(function(cI){var cJ=this.model.getRowDataAsMap(cI);
cH.push(cJ);
},this);
return cH;
},__sz:function(cK){var cM=this.model.getRowData(cK);

if(cM===undefined||cM==null)return null;
var cL=cM._gpsData||null;
return cL;
},_configureColumn:function(i,cN,cO,cP){var db=29;
var cV=29;
var dc=25;
var cU=25;
this.tcm.setHeaderCellRenderer(i,new track.poi.EnhancedHeaderCellRenderer());
var cY=new qx.ui.table.cellrenderer.Default();

switch(cO){case net.watchee.PoiAttribConfig.STRING:case null:cY=new qx.ui.table.cellrenderer.String();

if(cP)this.tcm.setCellEditorFactory(i,new qx.ui.table.celleditor.TextField());
break;
case net.watchee.PoiAttribConfig.INT:case net.watchee.PoiAttribConfig.FLOAT:cY=new qx.ui.table.cellrenderer.Number();

if(cP)this.tcm.setCellEditorFactory(i,new track.poi.SpinnerFactory());
break;
case net.watchee.PoiAttribConfig.HTML:case net.watchee.PoiAttribConfig.BARCODE:cY=new qx.ui.table.cellrenderer.Html();
break;
case net.watchee.PoiAttribConfig.BOOL:this.tcm.setColumnWidth(i,dc);
this.tcm.getBehavior().set(i,{maxWidth:dc});
cY=new qx.ui.table.cellrenderer.Boolean();

if(cP)this.tcm.setCellEditorFactory(i,new qx.ui.table.celleditor.CheckBox());
break;
case net.watchee.PoiAttribConfig.DATE:cY=new qx.ui.table.cellrenderer.Date();
var cS=qx.locale.Date.getTimeFormat(bi,qx.locale.Manager.getInstance().getLocale());
var cW=new qx.util.format.DateFormat(cS);
cY.setDateFormat(cW);

if(cP){var cX=new track.poi.DateFieldFactory();
cX.setType(c);
this.tcm.setCellEditorFactory(i,cX);
}this.tcm.getHeaderCellRenderer(i).setIconUrl(xbGetQxIcon(bb));
break;
case net.watchee.PoiAttribConfig.TIME:cY=new qx.ui.table.cellrenderer.Date();
var cS=qx.locale.Date.getTimeFormat(p,qx.locale.Manager.getInstance().getLocale());
var cW=new qx.util.format.DateFormat(cS);
cY.setDateFormat(cW);

if(cP){var cX=new track.poi.DateFieldFactory();
cX.setType(H);
this.tcm.setCellEditorFactory(i,cX);
}this.tcm.getHeaderCellRenderer(i).setIconUrl(xbGetQxIcon(A));
break;
case net.watchee.PoiAttribConfig.LIST:if(cP){var cX=new qx.ui.table.celleditor.SelectBox();
var cT=this.poiConfig.getListArr(i);

if(cN.indexOf(net.watchee.GPSData.KEY_STATUS_POI)==0){var dd=[];

for(var da=0;da<cT.length;da++){var cQ=this.statusTransaltionsENtoForeign.get(cT[da],cT[da]);
this.info("fillColumn: en="+cT[da]+" -> de="+cQ);
dd.push(cQ);
}cT=dd;
}cX.setListData(cT);
this.tcm.setCellEditorFactory(i,cX);
}
if(cN.indexOf(net.watchee.GPSData.KEY_STATUS_POI)==0){var cY=new qx.ui.table.cellrenderer.Conditional(x,br,br,br);
cY.addRegex(u+this.statusTransaltionsENtoForeign.get(V),null,bK,null,a);
cY.addRegex(bu+this.statusTransaltionsENtoForeign.get(W),null,d,null,null);
cY.addRegex(bF+this.statusTransaltionsENtoForeign.get(bm),null,q,null,null);
}break;
case net.watchee.PoiAttribConfig.AUDIO:this.tcm.setColumnWidth(i,db);
this.tcm.getBehavior().set(i,{maxWidth:db});
cY=new track.poi.StaticImageRenderer(16,16,xbGetIcon(bd),xbGetIcon(R));
this.tcm.getHeaderCellRenderer(i).setIconUrl(xbGetQxIcon(bE));
break;
case net.watchee.PoiAttribConfig.IMAGE:case net.watchee.PoiAttribConfig.SIGNATURE:this.tcm.setColumnWidth(i,cV);
this.tcm.getBehavior().set(i,{maxWidth:cV});
cY=new track.poi.StaticImageRenderer(16,16,xbGetIcon(E),xbGetIcon(R));
this.tcm.getHeaderCellRenderer(i).setIconUrl(xbGetQxIcon(v));
break;
}if(cN.indexOf(bz)==0){switch(cN){case bn:var cR=115;
this.tcm.setColumnWidth(i,cR);
this.tcm.getBehavior().set(i,{width:bs,maxWidth:cR});
this.tcm.getBehavior().set(i,{width:bs,minWidth:cR});
break;
case by:this.tcm.setColumnWidth(i,120);
break;
case net.watchee.GPSData.KEY_STATUS_POI:this.tcm.setColumnWidth(i,90);
break;
case O:var cR=110;
this.tcm.setColumnWidth(i,cR);
this.tcm.getBehavior().set(i,{width:bs,minWidth:cR});
this.tcm.getBehavior().set(i,{width:bs,maxWidth:cR});
break;
case bA:var cR=180;
this.tcm.setColumnWidth(i,cR);
this.tcm.getBehavior().set(i,{width:bs,minWidth:cR});
this.tcm.getBehavior().set(i,{width:bs,maxWidth:400});
break;
case X:this.tcm.setColumnWidth(i,cU);
this.tcm.getBehavior().setMaxWidth(i,cU);
this.tcm.getHeaderCellRenderer(i).setIconUrl(xbGetIcon(M));
break;
case bo:this.tcm.setColumnWidth(i,dc);
this.tcm.getBehavior().setMaxWidth(i,dc);
this.tcm.getHeaderCellRenderer(i).setIconUrl(xbGetIcon(Y));
break;
case bp:cY=new track.poi.StaticImageRenderer(16,16,xbGetIcon(j),xbGetIcon(L));
this.tcm.getHeaderCellRenderer(i).setIconUrl(xbGetIcon(bL));
this.tcm.setColumnWidth(i,cV);
this.tcm.getBehavior().set(i,{maxWidth:cV});
default:;
}}this.tcm.setDataCellRenderer(i,cY);

if(cP){this.model.setColumnEditable(i,true);
this.tcm.getHeaderCellRenderer(i).setTextColor(F);
this.tcm.getHeaderCellRenderer(i).setToolTip(this.trc(C,bG));
}},_handleCellClick:function(e){var dD=e.getColumn();
var dj=e.getRow();
var dl=this.model.getValue(dD,dj);
var dt=this.typeArr[dD];
var du=this.editableArr[dD];
var di=this.idArr[dD];

if(di==bp){if(this._lastPinkCrosshairIndex>-1)this.model.setValue(dD,this._lastPinkCrosshairIndex,null);
this.model.setValue(dD,dj,true);
this._lastPinkCrosshairIndex=dj;
var dv=this.__sz(dj);
this.trackGui.watchee.getMapManager().removeHighlightPoi();
var dr=new net.watchee.DrawingAttributes();
dr.center=true;
this.trackGui.watchee.getMapManager().highlightPoi(dv,dr);
}else if(di==bn){if(e.isRightPressed()){var dv=this.__sz(dj);
this.trackGui.infoMsgBox(B+dv.getUniqueId());
}}
if(dl==null)return;

if(dt.indexOf(net.watchee.PoiAttribConfig.AUDIO)==0){var dm=net.watchee.checkNativeAudioSupport();
var dg=this._getAudioUrl(dl.audioId,dm.mimeType);
var df=new qx.ui.popup.Popup(new qx.ui.layout.VBox());
var ds=new qx.ui.basic.Label(bl+dl.audioId+w+dl.audioSec+g+dl.audioType);
var dy=new qx.ui.basic.Label(dm.info+bg+dm.mimeType);
df.add(ds);
df.add(dy);

if(e.isRightPressed()||!dm.nativeSupport){if(!dm.nativeSupport){df.add(new qx.ui.basic.Label(this.trc(y,b)));
}var dp=U+dg+z+dg+bq;
var dA=new qx.ui.embed.Html(dp);
dA.setWidth(700);
dA.setHeight(20);
df.add(dA);
}else if(dm.nativeSupport){var dx=net.watchee.playSound(dg,dl.audioId,this);
var dA=new qx.ui.embed.Html(dx);
dA.setWidth(300);
dA.setHeight(32);
df.add(dA);
}df.placeToMouse(e);
df.show();
}else if((dt.indexOf(net.watchee.PoiAttribConfig.IMAGE)==0)&&di!=bp){var df=new qx.ui.popup.Popup(new qx.ui.layout.VBox());
var dz=this._getImageUrl(dl.pictureId,dl.mimeType);
var ds=new qx.ui.basic.Label(bl+dl.pictureId+T+dl.width+P+dl.height+bv+dl.mimeType);
df.add(ds);

if(e.isRightPressed()){var dp=U+dz+bf+dz+bq;
var dA=new qx.ui.embed.Html(dp);
dA.setWidth(500);
dA.setHeight(20);
df.add(dA);
}else{var de=new qx.ui.basic.Image(dz);
de.addListener(bx,function(e){window.open(dz,net.watchee.PoiAttribConfig.IMAGE);
},this);
df.add(de);
}df.placeToMouse(e);
df.show();
}else if(dt.indexOf(net.watchee.PoiAttribConfig.SIGNATURE)==0){var df=new qx.ui.popup.Popup(new qx.ui.layout.VBox());
var dz=this._getImageUrl(dl.pictureId,dl.mimeType);
var ds=new qx.ui.basic.Label(bl+dl.pictureId+T+dl.width+P+dl.height+bv+dl.mimeType);
df.add(ds);

if(e.isRightPressed()){var dp=U+dz+m+dz+bq;
var dA=new qx.ui.embed.Html(dp);
dA.setWidth(500);
dA.setHeight(20);
df.add(dA);
}else{var de=new qx.ui.basic.Image(dz);
de.addListener(bx,function(e){window.open(dz,net.watchee.PoiAttribConfig.SIGNATURE);
},this);
df.add(de);
}df.placeToMouse(e);
df.show();
}else{if(du){if(dt==net.watchee.PoiAttribConfig.BOOL){var dB=this.model.getValue(dD,dj);
this.model.setValue(dD,dj,!dB);

if(di==bo){this.showIconOnMap(dj,!dB);
}else{var dC={row:dj,col:dD,value:!dB,oldValue:dB};
this.fireDataEvent(Q,dC);
}}else{var dh=true;

if(!dh){this.setFocusedCell(dD,dj);
this.startEditing();
}}}else{var dw=br;

if(dl&&typeof dl==k){var dn=dl.indexOf(bc);

if(dn==0){dw=dl;
}else if(dn>0){var dq=dl.charAt(dn-1);
var dw=dl.substring(dn);
var dk=dw.indexOf(dq);

if(dk!=-1)dw=dw.substring(0,dk);
}
if(dw.length>0){this.info("Clicked on link "+dw);
window.open(dw,h);
}}}}},removeRows:function(){this.rowIndex=0;
this.setIcons(false);
this.model.removeRows(0,this.model.getRowCount());
},showIconOnMap:function(dE,dF){var dH=this.__sz(dE);
var dG=new net.watchee.DrawingAttributes();

if(!dF){this.trackGui.watchee.getMapManager().removePoi(dH.getUniqueId(),dG);
return;
}dG.iconUrl=this.poiConfig.getIcon();
if(dG.iconUrl.indexOf(bh)==-1)dG.iconUrl=D+dG.iconUrl;
dG.labelTop=dH._poiReportTableRowIndex;
dG.onMarkerClickCb=function(dI,dJ,dK){if(dI)this.focusFromCallback(dE);
return false;
};
dG.onMarkerClickThisP=this;
dG.onMarkerClickReturnObj=J;
this.trackGui.watchee.getMapManager().addPoi(dH,dG);
},focusFromCallback:function(dL){this.setFocusedCell(1,dL,true);
this.fireEvent(ba);
},setIcons:function(dM){for(var i=0,l=this.model.getRowCount();i<l;i++){this.model.setValueById(bo,i,dM);
this.showIconOnMap(i,dM);
}},setAllRows:function(dN,dO){for(var i=0,l=this.model.getRowCount();i<l;i++){this.model.setValueById(dN,i,dO);
}},addRow:function(dP,dQ){if(dP.isInitialUpdate){return;
}var dY=dQ.getDevice().getLoginName();
var eg=dQ.getTrackName();
var dS=dQ.getDevice().getNiceName();
var ed=dP.getContainerId();
var eh=new Object();
var em=this.idArr;
var ec=this.typeArr;
dP._poiReportTableRowIndex=this.rowIndex++;
dP._loginName=dY;
dP._trackName=eg;
dP._trackHolder=dQ;
var dX=dP.getPoiMap();

for(var i=0;i<em.length;i++){var dV=em[i];
var ee=ec[i];
if(dV.indexOf(bz)==0){switch(dV){case bn:eh._date=dP.getLocalTsIsoStr();
break;
case by:eh._loginName=dS;
break;
case O:eh._latlon=bt+dP.getGoogleMapsLink(12,dP.getTrackName(br)+bH+dP.getAlarmTypeNotNull())+bw+dP.latitudeDecimal(5)+bC+dP.longitudeDecimal(5)+bq;
break;
case bA:var el=true;
var ea=dP.getAddressStr(bM,el,null);

if(ea!=null&&ea.length!=0&&!dP.hasAddressStrFromDb()){this.trackGui.sendChangeLocationAddr([dP]);
}eh._address=ea;
break;
case X:eh._row=dP._poiReportTableRowIndex;
break;
case bo:eh._showIcon=false;
break;
case bp:eh._highlightOnMap=null;
break;
case net.watchee.GPSData.KEY_STATUS_POI:var ej=net.watchee.GPSData.KEY_STATUS_POI;
var ek=this.poiConfig.getPoiAttribConfig(net.watchee.GPSData.KEY_STATUS_POI).getDefaultValue();
var eb=dP.getInfo(ej,ek);
var dR=this.statusTransaltionsENtoForeign.get(eb,ek);
this.info("addRow: en="+eb+" -> de="+dR);
eh[ej]=dR;
break;
}}else{switch(ee){case net.watchee.PoiAttribConfig.INT:case net.watchee.PoiAttribConfig.FLOAT:eh[dV]=org.xmlBlaster.util.toNumber(dX[dV]);
break;
case net.watchee.PoiAttribConfig.BOOL:eh[dV]=org.xmlBlaster.util.toBoolean(dX[dV]);
break;
case net.watchee.PoiAttribConfig.IMAGE:eh[dV]=dP.getPictureInfo(null);
break;
case net.watchee.PoiAttribConfig.SIGNATURE:eh[dV]=dP.getSignatureInfo(null);
break;
case net.watchee.PoiAttribConfig.AUDIO:eh[dV]=dP.getAudioInfo(null);
break;
case net.watchee.PoiAttribConfig.BARCODE:var dW=dX[dV]||br;
eh[dV]=dW;

if(dW!=null&&dW.indexOf(t)!=-1){eh[dV]=bt+dW+bw+dW+bq;
}else{}break;
default:eh[dV]=dX[dV];
}}}eh._gpsData=dP;
var ef=[eh];
var dT=null;
var dU=true;
var ei=true;
this.model.addRowsAsMapArray(ef,dT,dU,ei);
},_getImageUrl:function(en,eo){var eo=eo||null;
return net.watchee.toPictureUrl(this.trackGui.watchee,en,eo);
},_getAudioUrl:function(ep,eq){return audioUrl=net.watchee.toAudioUrl(this.trackGui.watchee,ep,eq);
}}});
})();
(function(){var p='g',o="==",n=">",m="notregex",l="between",k="<",j="regex",h='gi',g="!between",f=">=",c="dataChanged",e="!=",d="<=",b="qx.ui.table.model.Filtered",a='';
qx.Class.define(b,{extend:qx.ui.table.model.Simple,construct:function(){qx.ui.table.model.Simple.call(this);
this.numericAllowed=new Array(o,e,n,k,f,d);
this.betweenAllowed=new Array(l,g);
this.__sA=false;
this.Filters=new Array();
},members:{__sB:null,__sA:null,_js_in_array:function(q,r){var s=r.toString();

if(s==a){return false;
}var u=new RegExp(q,p);
var t=u.test(r);
return t;
},addBetweenFilter:function(v,w,x,y){if(this._js_in_array(v,this.betweenAllowed)&&y!=null){if(w!=null&&x!=null){var z=new Array(v,w,x,y);
}}
if(z!=null){this.Filters.push(z);
}else{throw new Error("Filter not recognized or value1/value2 is null!");
}},addNumericFilter:function(A,B,C){var D=null;

if(this._js_in_array(A,this.numericAllowed)&&C!=null){if(B!=null){D=[A,B,C];
}}
if(D!=null){this.Filters.push(D);
}else{throw new Error("Filter not recognized: value or target is null!");
}},addRegex:function(E,F,G){var I;

if(G){I=h;
}else{I=p;
}
if(E!=null&&F!=null){var H=new Array(j,E,F,I);
}
if(H!=null){this.Filters.push(H);
}else{throw new Error("regex cannot be null!");
}},addNotRegex:function(J,K,L){var N;

if(L){N=h;
}else{N=p;
}
if(J!=null&&K!=null){var M=new Array(m,J,K,N);
}
if(M!=null){this.Filters.push(M);
}else{throw new Error("notregex cannot be null!");
}},applyFilters:function(){var i;
var S;
var O;
var R=this.getData();
var P=R.length;

for(var U=0;U<P;U++){S=false;

for(i in this.Filters){if(this._js_in_array(this.Filters[i][0],this.numericAllowed)&&S==false){O=this.getValueById(this.Filters[i][2],U);

switch(this.Filters[i][0]){case o:if(O==this.Filters[i][1]){S=true;
}break;
case e:if(O!=this.Filters[i][1]){S=true;
}break;
case n:if(O>this.Filters[i][1]){S=true;
}break;
case k:if(O<this.Filters[i][1]){S=true;
}break;
case f:if(O>=this.Filters[i][1]){S=true;
}break;
case d:if(O<=this.Filters[i][1]){S=true;
}break;
}}else if(this._js_in_array(this.Filters[i][0],this.betweenAllowed)&&S==false){O=this.getValueById(this.Filters[i][3],U);

switch(this.Filters[i][0]){case l:if(O>=this.Filters[i][1]&&O<=this.Filters[i][2]){S=true;
}break;
case g:if(O<this.Filters[i][1]&&O>this.Filters[i][2]){S=true;
}break;
}}else if(this.Filters[i][0]==j&&S==false){O=this.getValueById(this.Filters[i][2],U);
var Q=new RegExp(this.Filters[i][1],this.Filters[i][3]);
S=Q.test(O);
}else if(this.Filters[i][0]==m&&S==false){O=this.getValueById(this.Filters[i][2],U);
var Q=new RegExp(this.Filters[i][1],this.Filters[i][3]);
S=!Q.test(O);
}}if(S==true){this.hideRows(U,1,false);
U--;
P--;
}}var T={firstRow:0,lastRow:P-1,firstColumn:0,lastColumn:this.getColumnCount()-1};
this.fireDataEvent(c,T);
},hideRows:function(V,W,dispatchEvent){var Y=this.getData();
dispatchEvent=(dispatchEvent!=null?dispatchEvent:true);

if(!this.__sA){this.__sB=Y.slice(0);
this.__sA=true;
}
if(W==null||W<1){W=1;
}
for(var X=V;X<(Y.length-W);X++){Y[X]=Y[X+W];
}this.removeRows(X,W);
if(dispatchEvent){var ba={firstRow:0,lastRow:Y.length-1,firstColumn:0,lastColumn:this.getColumnCount()-1};
this.fireDataEvent(c,ba);
}},resetHiddenRows:function(){if(!this.__sB){return ;
}this.Filters=[];
this.setData(qx.lang.Array.clone(this.__sB));
},setData:function(bb,bc){this.__sB=qx.lang.Array.clone(bb);
this.Filters=[];
qx.ui.table.model.Simple.prototype.setData.call(this,bb,bc);
}},destruct:function(){this.__sB=this.numericAllowed=this.betweenAllowed=this.Filters=null;
}});
})();
(function(){var a="track.poi.EnhancedTableModel";
qx.Class.define(a,{extend:qx.ui.table.model.Filtered,construct:function(){qx.ui.table.model.Filtered.call(this);
this.secondarySortColumnIndex=-1;
},members:{sortByColumn:function(b,c){if(this.secondarySortColumnIndex>-1&&this.secondarySortColumnIndex!=b){qx.ui.table.model.Filtered.prototype.sortByColumn.call(this,this.secondarySortColumnIndex,false);
}qx.ui.table.model.Filtered.prototype.sortByColumn.call(this,b,c);
},setSecondarySortColumnIndex:function(d){this.secondarySortColumnIndex=d;
}}});
})();
(function(){var n="appear",m="columnVisibilityMenuCreateEnd",l="tableWidthChanged",k="verticalScrollBarChanged",j="qx.ui.table.columnmodel.resizebehavior.Abstract",i="qx.ui.table.columnmodel.Resize",h="_applyBehavior",g="separator",f="visibilityChanged",e="Reset column widths",b="changeBehavior",d="user-button",c="widthChanged",a="execute";
qx.Class.define(i,{extend:qx.ui.table.columnmodel.Basic,include:qx.locale.MTranslation,construct:function(){qx.ui.table.columnmodel.Basic.call(this);
this.__sC=false;
this.__sD=false;
},properties:{behavior:{check:j,init:null,nullable:true,apply:h,event:b}},members:{__sD:null,__sC:null,__rL:null,_applyBehavior:function(p,q){if(q!=null){q.dispose();
q=null;
}p._setNumColumns(this.getOverallColumnCount());
p.setTableColumnModel(this);
},init:function(r,s){qx.ui.table.columnmodel.Basic.prototype.init.call(this,r,s);

if(this.__rL==null){this.__rL=s;
s.addListener(n,this._onappear,this);
s.addListener(l,this._onTableWidthChanged,this);
s.addListener(k,this._onverticalscrollbarchanged,this);
s.addListener(m,this._addResetColumnWidthButton,this);
this.addListener(c,this._oncolumnwidthchanged,this);
this.addListener(f,this._onvisibilitychanged,this);
}if(this.getBehavior()==null){this.setBehavior(new qx.ui.table.columnmodel.resizebehavior.Default());
}this.getBehavior()._setNumColumns(r);
},getTable:function(){return this.__rL;
},_addResetColumnWidthButton:function(event){var v=event.getData();
var u=v.columnButton;
var t=v.menu;
var o;
o=u.factory(g);
t.add(o);
o=u.factory(d,{text:this.tr(e)});
t.add(o);
o.addListener(a,this._onappear,this);
},_onappear:function(event){if(this.__sC){return ;
}this.__sC=true;
this.getBehavior().onAppear(event,event.getType()!==n);
this.__rL._updateScrollerWidths();
this.__rL._updateScrollBarVisibility();
this.__sC=false;
this.__sD=true;
},_onTableWidthChanged:function(event){if(this.__sC||!this.__sD){return ;
}this.__sC=true;
this.getBehavior().onTableWidthChanged(event);
this.__sC=false;
},_onverticalscrollbarchanged:function(event){if(this.__sC||!this.__sD){return ;
}this.__sC=true;
this.getBehavior().onVerticalScrollBarChanged(event);
qx.event.Timer.once(function(){if(this.__rL&&!this.__rL.isDisposed()){this.__rL._updateScrollerWidths();
this.__rL._updateScrollBarVisibility();
}},this,0);
this.__sC=false;
},_oncolumnwidthchanged:function(event){if(this.__sC||!this.__sD){return ;
}this.__sC=true;
this.getBehavior().onColumnWidthChanged(event);
this.__sC=false;
},_onvisibilitychanged:function(event){if(this.__sC||!this.__sD){return ;
}this.__sC=true;
this.getBehavior().onVisibilityChanged(event);
this.__sC=false;
}},destruct:function(){this.__rL=null;
}});
})();
(function(){var e="auto",d="string",c="number",b="*",a="qx.ui.core.ColumnData";
qx.Class.define(a,{extend:qx.ui.core.LayoutItem,construct:function(){qx.ui.core.LayoutItem.call(this);
this.setColumnWidth(e);
},members:{__sE:null,renderLayout:function(f,top,g,h){this.__sE=g;
},getComputedWidth:function(){return this.__sE;
},getFlex:function(){return this.getLayoutProperties().flex||0;
},setColumnWidth:function(i,j){var j=j||0;
var k=null;

if(typeof i==c){this.setWidth(i);
}else if(typeof i==d){if(i==e){j=1;
}else{var l=i.match(/^[0-9]+(?:\.[0-9]+)?([%\*])$/);

if(l){if(l[1]==b){j=parseFloat(i);
}else{k=i;
}}}}this.setLayoutProperties({flex:j,width:k});
}},environment:{"qx.tableResizeDebug":false}});
})();
(function(){var b="qx.ui.table.columnmodel.resizebehavior.Abstract",a="abstract";
qx.Class.define(b,{type:a,extend:qx.core.Object,members:{_setNumColumns:function(c){throw new Error("_setNumColumns is abstract");
},onAppear:function(event,d){throw new Error("onAppear is abstract");
},onTableWidthChanged:function(event){throw new Error("onTableWidthChanged is abstract");
},onVerticalScrollBarChanged:function(event){throw new Error("onVerticalScrollBarChanged is abstract");
},onColumnWidthChanged:function(event){throw new Error("onColumnWidthChanged is abstract");
},onVisibilityChanged:function(event){throw new Error("onVisibilityChanged is abstract");
},_getAvailableWidth:function(){var f=this.getTableColumnModel();
var i=f.getTable();
var e=i._getPaneScrollerArr();

if(!e[0]||!e[0].getLayoutParent().getBounds()){return null;
}var h=e[0].getLayoutParent().getBounds().width;
var g=e[e.length-1];
h-=g.getPaneInsetRight();
return h;
}}});
})();
(function(){var j="Function",h="__sH",g="Boolean",f="minWidth",e="width",d="qx.ui.table.columnmodel.Resize",c="qx.ui.table.columnmodel.resizebehavior.Default",b="__sG",a="maxWidth";
qx.Class.define(c,{extend:qx.ui.table.columnmodel.resizebehavior.Abstract,construct:function(){qx.ui.table.columnmodel.resizebehavior.Abstract.call(this);
this.__sF=[];
this.__sG=new qx.ui.layout.HBox();
this.__sG.connectToWidget(this);
this.__sH=new qx.util.DeferredCall(this._computeColumnsFlexWidth,this);
},properties:{newResizeBehaviorColumnData:{check:j,init:function(k){return new qx.ui.core.ColumnData();
}},initializeWidthsOnEveryAppear:{check:g,init:false},tableColumnModel:{check:d}},members:{__sG:null,__sI:null,__sF:null,__sH:null,__sJ:false,setWidth:function(m,n,o){if(m>=this.__sF.length){throw new Error("Column number out of range");
}this.__sF[m].setColumnWidth(n,o);
this.__sH.schedule();
},setMinWidth:function(p,q){if(p>=this.__sF.length){throw new Error("Column number out of range");
}this.__sF[p].setMinWidth(q);
this.__sH.schedule();
},setMaxWidth:function(r,s){if(r>=this.__sF.length){throw new Error("Column number out of range");
}this.__sF[r].setMaxWidth(s);
this.__sH.schedule();
},set:function(t,u){for(var v in u){switch(v){case e:this.setWidth(t,u[v]);
break;
case f:this.setMinWidth(t,u[v]);
break;
case a:this.setMaxWidth(t,u[v]);
break;
default:throw new Error("Unknown property: "+v);
}}},onAppear:function(event,w){if(w===true||!this.__sJ||this.getInitializeWidthsOnEveryAppear()){this._computeColumnsFlexWidth();
this.__sJ=true;
}},onTableWidthChanged:function(event){this._computeColumnsFlexWidth();
},onVerticalScrollBarChanged:function(event){this._computeColumnsFlexWidth();
},onColumnWidthChanged:function(event){this._extendNextColumn(event);
},onVisibilityChanged:function(event){var x=event.getData();
if(x.visible){this._computeColumnsFlexWidth();
return;
}this._extendLastColumn(event);
},_setNumColumns:function(y){var z=this.__sF;
if(y<=z.length){z.splice(y,z.length);
return;
}for(var i=z.length;i<y;i++){z[i]=this.getNewResizeBehaviorColumnData()();
z[i].columnNumber=i;
}},getLayoutChildren:function(){return this.__sI;
},_computeColumnsFlexWidth:function(){this.__sH.cancel();
var E=this._getAvailableWidth();

if(E===null){return;
}var A=this.getTableColumnModel();
var C=A.getVisibleColumns();
var D=C.length;
var B=this.__sF;
var i,l;

if(D===0){return;
}var G=[];

for(i=0;i<D;i++){G.push(B[C[i]]);
}this.__sI=G;
this.__sK();
this.__sG.renderLayout(E,100);
for(i=0,l=G.length;i<l;i++){var F=G[i].getComputedWidth();
A.setColumnWidth(C[i],F);
}},__sK:function(){this.__sG.invalidateChildrenCache();
var H=this.__sI;

for(var i=0,l=H.length;i<l;i++){H[i].invalidateLayoutCache();
}},_extendNextColumn:function(event){var M=this.getTableColumnModel();
var P=event.getData();
var K=M.getVisibleColumns();
var J=this._getAvailableWidth();
var I=K.length;
if(P.newWidth>P.oldWidth){return ;
}var i;
var L;
var O=0;

for(i=0;i<I;i++){O+=M.getColumnWidth(K[i]);
}if(O<J){for(i=0;i<K.length;i++){if(K[i]==P.col){L=K[i+1];
break;
}}
if(L){var N=(J-(O-M.getColumnWidth(L)));
M.setColumnWidth(L,N);
}}},_extendLastColumn:function(event){var T=this.getTableColumnModel();
var X=event.getData();
if(X.visible){return;
}var S=T.getVisibleColumns();
if(S.length==0){return;
}var R=this._getAvailableWidth(T);
var Q=S.length;
var i;
var V;
var W=0;

for(i=0;i<Q;i++){W+=T.getColumnWidth(S[i]);
}if(W<R){V=S[S.length-1];
var U=(R-(W-T.getColumnWidth(V)));
T.setColumnWidth(V,U);
}},_getResizeColumnData:function(){return this.__sF;
}},destruct:function(){this.__sF=this.__sI=null;
this._disposeObjects(b,h);
}});
})();
(function(){var g="",f="String",e="</span>",d="<span style='color:",c="label",b="'>",a="track.poi.EnhancedHeaderCellRenderer";
qx.Class.define(a,{extend:qx.ui.table.headerrenderer.Default,properties:{iconUrl:{check:f,init:g},textColor:{check:f,init:g}},members:{updateHeaderCell:function(h,i){qx.ui.table.headerrenderer.Default.prototype.updateHeaderCell.call(this,h,i);
var k;

if(h.name&&h.name.translate){k=h.name.translate();
}else{k=h.name;
}
if(this.getTextColor()){k=d+this.getTextColor()+b+k+e;
}
if(this.getIconUrl()){i.setIcon(this.getIconUrl());
i.setLabel(null);
var j=i.getToolTip();

if(j==null){j=new qx.ui.tooltip.ToolTip();
i.setToolTip(j);
qx.util.DisposeUtil.disposeTriggeredBy(j,i);
}
if(this.getTextColor())j.setRich(true);
j.setLabel(k);
}else{if(this.getTextColor())i.getChildControl(c).setRich(true);
i.setLabel(k);
}}}});
})();
(function(){var c="qx.ui.table.cellrenderer.String",b="qooxdoo-table-cell",a="";
qx.Class.define(c,{extend:qx.ui.table.cellrenderer.Conditional,members:{_getContentHtml:function(d){return qx.bom.String.escape(d.value||a);
},_getCellClass:function(e){return b;
}}});
})();
(function(){var e="",d="qooxdoo-table-cell qooxdoo-table-cell-right",c="0",b="qx.util.format.NumberFormat",a="qx.ui.table.cellrenderer.Number";
qx.Class.define(a,{extend:qx.ui.table.cellrenderer.Conditional,properties:{numberFormat:{check:b,init:null,nullable:true}},members:{_getContentHtml:function(f){var g=this.getNumberFormat();

if(g){if(f.value||f.value==0){return g.format(f.value);
}else{return e;
}}else{return f.value==0?c:(f.value||e);
}},_getCellClass:function(h){return d;
}}});
})();
(function(){var a="track.poi.SpinnerFactory";
qx.Class.define(a,{extend:qx.core.Object,implement:qx.ui.table.ICellEditorFactory,members:{createCellEditor:function(b){var c=new qx.ui.form.Spinner(0,0,10);
c.setValue(b.value);
return c;
},getCellEditorValue:function(d){var e=d.getValue();
return e;
}}});
})();
(function(){var j="px",i="no-repeat",h="repeat",g="gecko",f="scale",e="string",d="static",c="'",b="qx.ui.table.cellrenderer.AbstractImage",a="}",A="  text-align:center;",z="scale-x",y="repeat-y",x=".qooxdoo-table-cell-icon {",w="",v="<div></div>",u="top",t="engine.version",s="engine.name",r="abstract",p=" qooxdoo-table-cell-icon",q="inline-block",n="repeat-x",o="  padding-top:1px;",l="title='",m="scale-y",k="-moz-inline-box";
qx.Class.define(b,{extend:qx.ui.table.cellrenderer.Abstract,type:r,construct:function(){qx.ui.table.cellrenderer.Abstract.call(this);
var B=this.self(arguments);

if(!B.stylesheet){B.stylesheet=qx.bom.Stylesheet.createElement(x+A+o+a);
}},properties:{repeat:{check:function(C){var D=[f,z,m,h,n,y,i];
return qx.lang.Array.contains(D,C);
},init:i}},members:{__sL:16,__sM:16,__sN:null,_insetY:2,_identifyImage:function(E){throw new Error("_identifyImage is abstract");
},_getImageInfos:function(F){var G=this._identifyImage(F);
if(G==null||typeof G==e){G={url:G,tooltip:null};
}if(!G.imageWidth||!G.imageHeight){var H=this.__sO(G.url);
G.imageWidth=H.width;
G.imageHeight=H.height;
}G.width=G.imageWidth;
G.height=G.imageHeight;
return G;
},__sO:function(I){var L=qx.util.ResourceManager.getInstance();
var K=qx.io.ImageLoader;
var J,M;
if(L.has(I)){J=L.getImageWidth(I);
M=L.getImageHeight(I);
}else if(K.isLoaded(I)){J=K.getWidth(I);
M=K.getHeight(I);
}else{J=this.__sL;
M=this.__sM;
}return {width:J,height:M};
},createDataCellHtml:function(N,O){this.__sN=this._getImageInfos(N);
return qx.ui.table.cellrenderer.Abstract.prototype.createDataCellHtml.call(this,N,O);
},_getCellClass:function(P){return qx.ui.table.cellrenderer.Abstract.prototype._getCellClass.call(this)+p;
},_getContentHtml:function(Q){var content=v;
if(this.__sN.url){content=qx.bom.element.Decoration.create(this.__sN.url,this.getRepeat(),{width:this.__sN.width+j,height:this.__sN.height+j,display:qx.core.Environment.get(s)==g&&qx.core.Environment.get(t)<1.9?k:q,verticalAlign:u,position:d});
}return content;
},_getCellAttributes:function(R){var S=this.__sN.tooltip;

if(S){return l+S+c;
}else{return w;
}}},destruct:function(){this.__sN=null;
}});
})();
(function(){var g="String",f="_applyIconTrue",e="decoration/table/boolean-true.png",d="qx.ui.table.cellrenderer.Boolean",c=";padding-top:4px;",b="decoration/table/boolean-false.png",a="_applyIconFalse";
qx.Class.define(d,{extend:qx.ui.table.cellrenderer.AbstractImage,construct:function(){qx.ui.table.cellrenderer.AbstractImage.call(this);
this.__sP=qx.util.AliasManager.getInstance();
this.initIconTrue();
this.initIconFalse();
},properties:{iconTrue:{check:g,init:e,apply:f},iconFalse:{check:g,init:b,apply:a}},members:{__sQ:null,__sR:false,__sP:null,_applyIconTrue:function(h){this.__sQ=this.__sP.resolve(h);
},_applyIconFalse:function(i){this.__sR=this.__sP.resolve(i);
},_insetY:5,_getCellStyle:function(j){return qx.ui.table.cellrenderer.AbstractImage.prototype._getCellStyle.call(this,j)+c;
},_identifyImage:function(k){var l={imageWidth:11,imageHeight:11};

switch(k.value){case true:l.url=this.__sQ;
break;
case false:l.url=this.__sR;
break;
default:l.url=null;
break;
}return l;
}},destruct:function(){this.__sP=null;
}});
})();
(function(){var i="keypress",h="Enter",g="qx.ui.table.celleditor.CheckBox",f="focus",d="center",c="keydown",b="middle",a="activate";
qx.Class.define(g,{extend:qx.core.Object,implement:qx.ui.table.ICellEditorFactory,members:{createCellEditor:function(j){var l=new qx.ui.container.Composite(new qx.ui.layout.HBox().set({alignX:d,alignY:b})).set({focusable:true});
var k=new qx.ui.form.CheckBox().set({value:j.value});
l.add(k);
l.addListener(f,function(){k.focus();
});
l.addListener(a,function(){k.activate();
});
k.addListener(c,function(e){if(e.getKeyIdentifier()==h){var m=qx.event.Pool.getInstance().getObject(qx.event.type.KeySequence);
var n=l.getContainerElement().getDomElement();
m.init(e.getNativeEvent(),n,e.getKeyIdentifier());
m.setType(i);
qx.event.Registration.dispatchEvent(n,m);
}},this);
return l;
},getCellEditorValue:function(o){return o.getChildren()[0].getValue();
}}});
})();
(function(){var d="",c="qx.util.format.DateFormat",b="qooxdoo-table-cell",a="qx.ui.table.cellrenderer.Date";
qx.Class.define(a,{extend:qx.ui.table.cellrenderer.Conditional,properties:{dateFormat:{check:c,init:null,nullable:true}},members:{_getContentHtml:function(e){var f=this.getDateFormat();

if(f){if(e.value){return qx.bom.String.escape(f.format(e.value));
}else{return d;
}}else{return e.value||d;
}},_getCellClass:function(g){return b;
}}});
})();
(function(){var f="DateField",e="DateTimePicker",d="TimeField",c="track.poi.DateFieldFactory",b="medium",a="datefield";
qx.Class.define(c,{extend:qx.core.Object,implement:qx.ui.table.ICellEditorFactory,properties:{type:{init:null,check:f}},members:{createCellEditor:function(g){var j=new qx.ui.form.DateField();

if(this.getType()==f){j.set({appearance:a});
var i=qx.locale.Date.getDateFormat(b,qx.locale.Manager.getInstance().getLocale());
var h=new qx.util.format.DateFormat(i);
j.setDateFormat(h);
}else if(this.getType()==d){j=new track.util.TimeField();
}else if(this.getType()==e){j=new track.util.DateTimePicker();
}j.setValue(g.value);
return j;
},getCellEditorValue:function(k){var l=k.getValue()||new Date();
return l;
}}});
})();
(function(){var h="",g="row",f="Function",e="qx.ui.table.celleditor.SelectBox",d="number",c="table-editor-selectbox",b="appear",a="Array";
qx.Class.define(e,{extend:qx.core.Object,implement:qx.ui.table.ICellEditorFactory,properties:{validationFunction:{check:f,nullable:true,init:null},listData:{check:a,init:null,nullable:true}},members:{createCellEditor:function(j){var n=new qx.ui.form.SelectBox().set({appearance:c});
var o=j.value;
n.originalValue=o;
var r=j.table.getTableColumnModel().getDataCellRenderer(j.col);
var p=r._getContentHtml(j);

if(o!=p){o=p;
}if(o===null){o=h;
}var m=this.getListData();

if(m){var q;

for(var i=0,l=m.length;i<l;i++){var s=m[i];

if(s instanceof Array){q=new qx.ui.form.ListItem(s[0],s[1]);
q.setUserData(g,s[2]);
}else{q=new qx.ui.form.ListItem(s,null);
q.setUserData(g,s);
}n.add(q);
}}var k=n.getChildrenContainer().findItem(h+o);

if(k){n.setSelection([k]);
}else{n.resetSelection();
}n.addListener(b,function(){n.open();
});
return n;
},getCellEditorValue:function(t){var u=t.getSelection();
var w=h;

if(u&&u[0]){w=u[0].getUserData(g)||u[0].getLabel();
}var v=this.getValidationFunction();

if(v){w=v(w,t.originalValue);
}
if(typeof t.originalValue==d){w=parseFloat(w);
}return w;
}}});
})();
(function(){var d="",c="track.poi.StaticImageRenderer",b="16/actions/list-remove.png",a="undefined";
qx.Class.define(c,{extend:qx.ui.table.cellrenderer.AbstractImage,construct:function(e,f,g,h){qx.ui.table.cellrenderer.AbstractImage.call(this);
if(e){this.__sS=e;
}
if(f){this.__sT=f;
}
if(g){this.__sU=g;
}this.__sV=xbGetQxIcon(b);

if(h){this.__sV=h;
}this.__sW=qx.util.AliasManager.getInstance();
},members:{__sW:null,__sT:16,__sS:16,__sU:d,_identifyImage:function(i){var j={imageWidth:this.__sS,imageHeight:this.__sT};

if(i.value==d||i.value==null||i.value==a){j.url=this.__sW.resolve(this.__sV);
}else{j.url=this.__sW.resolve(this.__sU);
}j.tooltip=i.tooltip;
return j;
}},destruct:function(){this.__sW=null;
}});
})();
(function(){var l="errorMsgBox",k="",j="label",h="execute",g="value",f="SUCCESS",d="doneEditing",c="%1 POIs changed: %2",b="Create report",a="saveChanges",bc="%1 POIs changed",bb="%1 POI changed but %2",ba="button",Y="No icons",X="Center selected icons on map",W="Do you really want to permanently delete <b> %1 </b> POIs?",V="%1 POIs removed",U="<b>Timeout, removing POI failed</b>",T="locationIdCsv",S="All icons",s="askMsgBox title",t="16/actions/document-save.png",q="Save changes",r="<b>Removing POI failed</b><p/>%1<p/>%2",o="Delete selected rows",p="POI change of id=",m="No rows selected for report.</br><i>You can select multiple rows by holding shift/ctrl while clicking</i>",n="16/mimetypes/office-spreadsheet.png",w="%1 POIs removed: %2",x="AjaxAnimator",F="<b>Timeout, changing POI failed</b>",D="%1 POI removed",K="<p>Can't remove locationId %1, GPSData is missing in table</p>",H="Delete",O="removeLocations",M="<p>Not removed locationId %1: %2</p>",z="No rows selected to delete.</br><i>You can select multiple rows by holding shift/ctrl while clicking</i>",R="click",Q="<p>Not changed locationId %1: %2</p>",P="Remove %1 POI",y="track.poi.PoiReportToolbar",B="_address",C="Do you really want to permanently delete <b>one</b> POI?",E="16/poi/hospital.png",G="net.watchee.report.PoiReport",I="<b>Changing POI failed</b><p/>%1<p/>%2",L="16/actions/edit-delete.png",N="%1 POI changed",u=" is not possible, invalid identifier for a column",v="deletePressed",A="%1 POI removed but %2",J="16/xSMS_read_16.png";
qx.Class.define(y,{extend:qx.ui.toolbar.ToolBar,implement:[track.poiprint.IPrintWindowModel],include:qx.locale.MTranslation,construct:function(bd,be){qx.ui.toolbar.ToolBar.call(this);
this.trackGui=bd;
this.poiReportTable=be;
this.create();
this.poiReportTable.addListener(d,function(){this.setSaveStatus(true);
},this);
this.poiReportTable.addListener(v,function(e){this.deleteRows();
},this);
},members:{create:function(){this.deleteButton=new qx.ui.toolbar.Button(this.trc(j,o),xbGetQxIcon(L));
this.add(this.deleteButton);
this.pdfButton=new qx.ui.toolbar.Button(this.trc(j,b),xbGetQxIcon(n));
this.add(this.pdfButton);
this.saveButton=new qx.ui.toolbar.Button(this.trc(j,q),xbGetQxIcon(t));
this.setSaveStatus(false);
this.add(this.saveButton);
this.all=this.trc(j,S);
this.none=this.trc(ba,Y);
this.iconButton=new qx.ui.toolbar.Button(this.all,xbGetIcon(E));
this.add(this.iconButton);
this.iconButton.setUserData(g,true);
this.centerButton=new qx.ui.toolbar.Button(this.trc(j,X),xbGetIcon(J));
this.add(this.centerButton);
this._addButtonListeners();
},_addButtonListeners:function(){this.deleteButton.addListener(h,function(e){this.deleteRows();
},this);
this.pdfButton.addListener(R,function(e){this.createPdf(e);
},this);
this.saveButton.addListener(h,function(e){this.saveChanges();
},this);
this.centerButton.addListener(h,function(e){this.trackGui.watchee.getMapManager().centerPois();
},this);
this.iconButton.addListener(h,function(e){if(this.iconButton.getUserData(g)==true){this.iconButton.setLabel(this.none);
this.poiReportTable.setIcons(true);
this.iconButton.setUserData(g,false);
}else{this.iconButton.setLabel(this.all);
this.poiReportTable.setIcons(false);
this.iconButton.setUserData(g,true);
}},this);
},getPoiConfig:function(){if(this.poiReportTable!=null){return this.poiReportTable.getPoiConfig();
}return null;
},isPoiReport:function(){return true;
},getTitle:function(){var bg=this.getPoiConfig();

if(bg==null){return k;
}var bf=bg.getContainerTitle(k);

if(bf.length>0)return bf;
return bg.getContainerId(k);
},fillFilterData:function(bh){var bi=this.getLocationIdCsvFromGui();
bh.addKeyValue(T,bi);
return bi.length>0;
},setSaveStatus:function(bj){this.saveButton.setEnabled(bj);
},getSaveStatus:function(){return this.saveButton.getEnabled();
},deleteRows:function(){if(this.poiReportTable==null)return;
var bk=this.poiReportTable.getSelectionAsGPSDataArr();

if(bk.length==0){this.trackGui.errorMsgBox(this.trc(l,z));
}else{this.trackGui.askMsgBox(this.trc(s,H),this.trn(C,W,bk.length,bk.length),function(bl){if(bl){var bm=this.getLocationIdArrFromGui();
this.removeLocations(bm);
}},this);
}},getLocationIdCsvFromGui:function(){var bo=this.getLocationIdArrFromGui();
var bn=org.xmlBlaster.util.arrayToCsv(bo);
return bn;
},getLocationIdArrFromGui:function(){var br=new Array();
var bp=this.poiReportTable.getSelectionAsGPSDataArr();

for(var i=0;i<bp.length;i++){var bq=bp[i].getUniqueId();
br.push(bq);
}return br;
},removeLocations:function(bs){if(this.trackGui==null)return;
this.info("removeLocations "+bs.length+"...");
this.trackGui.startAjaxAnimator(this.trc(x,P,bs.length));
var bu=this.trackGui.getBounceNextVal();
var bt=60;
this.trackGui.getRequestResponseDispatcher().registerRequest(bu,bt,this.responseOrExceptionOrTimeoutReceived_remove,this,O);
this.trackGui.sendRemoveLocations(bs,bu);
},responseOrExceptionOrTimeoutReceived_remove:function(bv,bw,bx){this.trackGui.stopAjaxAnimator();
if(bv==null){this.trackGui.errorMsgBox(this.trc(l,U));
return;
}
if(bv.isException()){this.trackGui.errorMsgBox(this.trc(l,r,bv.getErrorCode(),bv.getErrorMessage()));
return;
}var bF=bv.getResult();
var bA=net.watchee.PropertyCollection.parseXml(bF);
var bz=bA.getKeys();
var by=0;
var bE=k;

for(var i=0;i<bz.length;i++){var bD=bz[i];
var bB=bA.getStr(bD);

if(bB==f){var bC=this.poiReportTable.removeRowByUniqueId(bD);

if(bC!=null){this.info("Removed locationId "+bD);
by++;
}else{this.error("Can't remove locationId "+bD+", GPSData is missing in table");
bE+=this.trc(l,K,bD);
}}else{this.warn("Can't remove locationId "+bD+": "+bB);
bE+=this.trc(l,M,bD,bB);
}}
if(bE.length==0){this.trackGui.infoMsgBox(this.trn(D,V,by,by));
}else{this.trackGui.errorMsgBox(this.trn(A,w,by,by,bE));
}},saveChanges:function(){if(this.poiReportTable==null)return;
var bP=this.poiReportTable.getEditedLocationsArr();
var bI=new net.watchee.PropertyCollections();

for(var bH=0;bH<bP.length;bH++){var bK=bP[bH];
var bJ=bI.get(net.watchee.GPSData.KEY_UNIQUEID,bK.locationId);

if(bJ==null){bJ=new net.watchee.PropertyCollection();
bI.add(bJ);
bJ.add(new net.watchee.PropertyPair(net.watchee.GPSData.KEY_UNIQUEID,bK.locationId));
}
if(bK.id==net.watchee.GPSData.KEY_UNIQUEID){this.trackGui.errorMsgBox(p+id+u);
continue;
}var bQ=null;
var bG=null;
var bL=null;
var bN=bK.id;

if(bN==B)bN=net.watchee.GPSData.KEY_ADDRESS;
var bO=new net.watchee.PropertyPair(bN,bK.value,true,bQ,bG,bL);
bJ.add(bO);
}var bR=this.trackGui.getBounceNextVal();
var bM=60;
this.trackGui.getRequestResponseDispatcher().registerRequest(bR,bM,this.responseOrExceptionOrTimeoutReceived_change,this,a);
this.trackGui.sendChangeLocations(bI,bR);
this.poiReportTable.flushEditedLocationsArr();
this.setSaveStatus(false);
},responseOrExceptionOrTimeoutReceived_change:function(bS,bT,bU){this.trackGui.stopAjaxAnimator();
if(bS==null){this.trackGui.errorMsgBox(this.trc(l,F));
return;
}
if(bS.isException()){this.trackGui.errorMsgBox(this.trc(l,I,bS.getErrorCode(),bS.getErrorMessage()));
return;
}var cc=bS.getResult();
var bW=net.watchee.PropertyCollection.parseXml(cc);
var bV=bW.getKeys();
var bY=0;
var cb=k;

for(var i=0;i<bV.length;i++){var ca=bV[i];
var bX=bW.getStr(ca);

if(bX==f){this.info("Changed locationId "+ca);
bY++;
}else{this.warn("Can't change locationId "+ca+": "+bX);
cb+=this.trc(l,Q,ca,bX);
}}
if(cb.length==0){this.trackGui.infoMsgBox(this.trn(N,bc,bY,bY));
}else{this.trackGui.errorMsgBox(this.trn(bb,c,bY,bY,cb));
}},createPdf:function(e){if(this.poiReportTable==null)return;
var cd=this.poiReportTable.getSelectionAsRowMapArr();

if(cd.length==0){this.trackGui.errorMsgBox(this.trc(l,m));
}else{var ce=G;
this.trackGui.getWindowManager().popupReportPrintWindow(this,ce);
}}}});
})();
(function(){var o="",n="tooltip",m="16/status/dialog-information.png",l="track.poi.PoiReportFilter",k="multi",j="Remove filter",h=" : ",g="You can select multiple items by holding <b> Ctrl </b> while clicking.",f=";",d="changeSelection",a="|",c="button",b="execute";
qx.Class.define(l,{extend:qx.ui.groupbox.GroupBox,construct:function(p,q){qx.ui.groupbox.GroupBox.call(this);
this.trackGui=p;
this.poiReportTable=q;
this.setLayout(new qx.ui.layout.HBox(5));
this.setContentPadding(2);
var r=this.poiReportTable.getPoiConfig().getPoiAttribConfig(net.watchee.GPSData.KEY_STATUS_POI);

if(r==null){this.exclude();
}else{this.create(r);
}},members:{create:function(s){this.list=new qx.ui.form.List(true).set({height:30,selectionMode:k});
this.label=new qx.ui.basic.Atom(s.getLabel()+h,xbGetQxIcon(m));
var w=s.getList().split(f);

for(var i=0;i<w.length;i++){var t=w[i];
model=this.poiReportTable.getStatusTransaltionsENtoForeign().get(t,t);
this.info("filter: en="+t+" <- de="+model);
var v=new qx.ui.form.ListItem(model,null,t);
this.list.add(v);
}var u=new qx.ui.form.Button(this.trc(c,j));
u.setEnabled(false);
u.addListener(b,function(){this.list.resetSelection();
this.poiReportTable.model.resetHiddenRows();
u.setEnabled(false);
},this);
var x=this.trc(n,g);
this.list.setToolTipText(x);
this.label.setToolTipText(x);
this.add(this.label);
this.add(this.list,{flex:1});
this.add(u);
this.list.addListener(d,function(e){var z=e.getData();
var y=o;

for(var i=0;i<z.length;i++){var A=z[i];

if(A!=null){y+=A.getLabel();

if(i!=z.length-1)y+=a;
}}
if(y!=o){u.setEnabled(true);
this.info("regex filter: "+y);
this.poiReportTable.model.resetHiddenRows();
this.poiReportTable.stopEditing();
this.poiReportTable.model.addNotRegex(y,net.watchee.GPSData.KEY_STATUS_POI,true);
this.poiReportTable.model.applyFilters();
}},this);
}}});
})();
(function(){var l="button",k="execute",j="poiConfig",h="",g="removeInputControl",f="legend",d="containerId=",c="beforeClose",b="world.png",a="Erase selected POI",P=")",O="Create, load, save and delete POI configurations on the server",N="window title",M="16/devices/drive-harddisk.png",L=" (Admin: ",K="32/actions/document-send.png",J="32/places/user-trash.png",I="You have no configuration permission from buddy '%1'",H="POI Configurations",G="changeSelection",s="Delete",t="errorMsgBox",q="listItem",r="22/devices/pda.png",o="track.poiconfig.PoiConfigWindow",p="32/actions/edit-delete.png",m="appear",n="containerId=*",u="dummy",v="poi/icons/",y="Save",x="label",A="Erase all POIs",z="Send and erase POI configurations on the devices. Caution: The device must be online (green icon)!",C="*New*",B="<span style='color:red'><b> Don't forget to save a modified POI configuration on the server after sending it to a device (-> 'Save' button at very top of window). <br> If not, your POI reports for this POI configuration might be incomplete or totally missing. </b></span>",w="16/devices/phone.png",F="Send selected POI",E="32/actions/edit-clear.png",D="32/actions/document-save.png";
net.watchee.util.NEW_CONTAINERID_PLACEHOLDER="**new**";
qx.Class.define(o,{extend:track.util.WindowWithHelpIcon,construct:function(Q){track.util.WindowWithHelpIcon.call(this);
this.trackGui=Q;
this.setLayout(new qx.ui.layout.VBox(3));
this.setUseMoveFrame(true);
this.setCaption(this.trc(N,H));
this.setIcon(xbGetQxIcon(r));
this.poiConfigContainer=null;
this.poiConfigManager=null;
this.programmaticSetSelected=false;
this.lastSelectedContainerId=null;
},members:{onContainerConfigUpdate:function(R,S){this.poiConfigManager=R;
this.setSelectBox(this.poiConfigManager);
},_createListItem:function(T){var V=T.getMenuLabel();

if(T.getNamespaceStr()!=this.trackGui.getMyLoginName()){V+=L+T.getNamespaceStr()+P;
}var U=new qx.ui.form.ListItem(V,net.watchee.STATIC_ICON_URL_PATH+T.getIcon(),T.getContainerId());
U.setUserData(j,T);
return U;
},setSelectBox:function(W){this.programmaticSetSelected=true;
this.containerIdSelectBox.removeAll();
this.containerIdSelectBox.add(this._createListItem(this.newContainerIdPoiConfig));
var Y=W.getPoiConfigArr();

for(var i=0;i<Y.length;i++){var X=this._createListItem(Y[i]);
this.containerIdSelectBox.add(X);

if((this.lastSelectedContainerId!=null&&this.lastSelectedContainerId!=net.watchee.util.NEW_CONTAINERID_PLACEHOLDER&&this.lastSelectedContainerId==Y[i].getContainerId())||this.poiConfigContainer.getContainerIdFromTextField()==Y[i].getContainerId()){this.containerIdSelectBox.setSelection([X]);
}}this.programmaticSetSelected=false;
},create:function(){this.info("track.poiconfig.PoiConfigWindow.create() enter");
this.addListener(m,function(){this.trackGui.queryPoiContainerConfigFromDb(this.onContainerConfigUpdate,this,u);
},this);
var ba=new qx.ui.groupbox.GroupBox(this.trc(f,O),xbGetQxIcon(M));
ba.setContentPadding(2);
ba.setLayout(new qx.ui.layout.HBox(3));
this.containerIdSelectBox=new qx.ui.form.SelectBox();
var bd=v;
this.newContainerIdPoiConfig=new net.watchee.PoiConfig(this.trackGui.getMyLoginName(),net.watchee.util.NEW_CONTAINERID_PLACEHOLDER,this.trc(q,C));
this.newContainerIdPoiConfig.icon=bd+b;
this.newContainerIdPoiConfig.attribConfigHashtable=new org.xmlBlaster.util.Hashtable();
this.newContainerIdPoiConfig.attribConfigHashtable.put(h,new net.watchee.PoiAttribConfig(h));
this.newContainerIdPoiConfigListItem=this._createListItem(this.newContainerIdPoiConfig);
this.containerIdSelectBox.add(this.newContainerIdPoiConfigListItem);
var be=new qx.ui.form.Button(this.trc(l,y),xbGetQxIcon(D));
be.addListener(k,function(){var bh=this.containerIdSelectBox.getSelection()[0].getModel();
var bj=this.containerIdSelectBox.getSelection()[0];
var bk=bj.getUserData(j);
var bi=bk.getNamespaceStr();
this.poiConfigContainer.saveOnServer(bh,bi);
bb.exclude();
},this);
this.deleteOnServerButton=new qx.ui.form.Button(this.trc(l,s),xbGetQxIcon(J));
this.deleteOnServerButton.setEnabled(false);
this.deleteOnServerButton.addListener(k,function(){var bl=this.containerIdSelectBox.getSelection()[0].getModel();
var bn=d+bl;
var bo=this.containerIdSelectBox.getSelection()[0];
var bp=bo.getUserData(j);
var bm=bp.getNamespaceStr();
this.containerIdSelectBox.remove(bo);
this.trackGui.sendInputConfig(bm,bl,h);
},this);
ba.add(this.containerIdSelectBox,{flex:1});
ba.add(be);
ba.add(this.deleteOnServerButton);
this.add(ba);
this.containerIdSelectBox.addListener(G,this.onContainerIdSelectBoxChangeSelection,this);
this.addListener(c,function(){if(this.poiConfigContainer!=null&&this.poiConfigContainer.iconChooser!=null){this.poiConfigContainer.iconChooser.close();
}},this);
this.sendBox=new qx.ui.groupbox.GroupBox(this.trc(f,z),xbGetQxIcon(w));
this.sendBox.setContentPadding(2);
this.sendBox.setLayout(new qx.ui.layout.HBox(3));
this.buddySelectBox=new track.util.BuddySelectBox(this.trackGui,this,true);
this.buddySelectBox.addDevicesListener(net.watchee.BuddyPermissionTO.PERMISSION_GPS_HISTORY);
var bg=new qx.ui.form.Button(this.trc(l,F),xbGetQxIcon(K));
bg.addListener(k,function(){var bq=this.buddySelectBox.getSelectedLoginName();
var bs=this.trackGui.watchee.getBuddyManager().getBuddyOrFriendOf(bq);

if(bs!=null&&!bs.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_CFG)){this.trackGui.errorMsgBox(this.trc(t,I,bq));
return;
}var br=this.containerIdSelectBox.getSelection()[0].getModel();
this.poiConfigContainer.sendToDevice(bq,br);
bb.show();
},this);
var bc=new qx.ui.form.Button(this.trc(l,a),xbGetQxIcon(p));
bc.addListener(k,function(){var bt=this.buddySelectBox.getSelectedLoginName();
var bu=this.containerIdSelectBox.getSelection()[0].getModel();
this.eraseOne(bt,bu);
},this);
var bf=new qx.ui.form.Button(this.trc(l,A),xbGetQxIcon(E));
bf.addListener(k,function(){var bv=this.buddySelectBox.getSelectedLoginName();
this.eraseAll(bv);
},this);
this.sendBox.add(this.buddySelectBox,{flex:1});
this.sendBox.add(bg);
this.sendBox.add(bc);
this.sendBox.add(bf);
this.add(this.sendBox);
var bb=new qx.ui.basic.Label(this.trc(x,B));
bb.setRich(true);
bb.setWrap(true);
this.add(bb);
bb.exclude();
this.info("track.poiconfig.PoiConfigWindow.create() leave");
this.poiConfigContainer=new track.poiconfig.PoiConfigContainer(this.trackGui);
this.poiConfigContainer.create(this.newContainerIdPoiConfig);
this.addBefore(this.poiConfigContainer,this.sendBox,{flex:1});
},eraseAll:function(bw){this.trackGui.sendActionToDeviceCSV(bw,n,g,true);
},eraseOne:function(bx,by){this.trackGui.sendActionToDeviceCSV(bx,d+by,g,true);
},onContainerIdSelectBoxChangeSelection:function(e){if(this.programmaticSetSelected){return false;
}var bA=e.getData();

if(bA.length==0)return;
this.info("Changed selection to "+bA);
var bB=e.getData()[0];
var bC=bB.getUserData(j);
var bz=(bC==this.newContainerIdPoiConfig);
this.deleteOnServerButton.setEnabled(!bz);
this.lastSelectedContainerId=bC.getContainerId();

if(this.poiConfigContainer!=null){this.remove(this.poiConfigContainer);
}this.poiConfigContainer=new track.poiconfig.PoiConfigContainer(this.trackGui);
this.poiConfigContainer.create(bC);
this.addBefore(this.poiConfigContainer,this.sendBox,{flex:1});
return true;
},destroyPopup:function(){if(this.poiConfigContainer!=null&&this.poiConfigContainer.iconChooser!=null){this.poiConfigContainer.iconChooser.destroyPopup();
}
if(this.trackGui!=null){this.trackGui.getMyRoot().remove(this);
this.trackGui=null;
}this.close();
}}});
})();
(function(){var m="",l=",",k="icon",j="label",i="setContainerValue",h="containerId=",g="\n",f="removeInputControl",d=",containerTitle=",c="addInputControl",T=",label=",S=",foil=",R=",containerChooseIconMime=image/",Q=",icon=",P=",containerChooseIconBase64=",O="InputConfig",N=".",M="-",L="16/actions/format-justify-fill.png",K="poiConfig failed, missing id: ",t="execute",u="The containerId may not contain any of '/-,=@<>&' character, please change it",r="error",s="Send icon to device",p=">",q="<",n="track.poiconfig.PoiConfigContainer",o="/",v="Menu label",w="Screen title",C="iconChanged",B="_",E="groupBoxTitle",D="@",G=",id=*",F="&",y="tooltip",J="Container Id",I="Point Of Interest Definition, created by: %1",H="=",x="addInputControl:",z="poiConfig failed: ",A="To device";
qx.Class.define(n,{extend:qx.ui.groupbox.GroupBox,construct:function(U){qx.ui.groupbox.GroupBox.call(this);
this.setIcon(xbGetQxIcon(L));
this.trackGui=U;
this.setContentPadding(5);
this.setLayout(new qx.ui.layout.VBox(5));
this.topLayout=new qx.ui.layout.Grid(5,5);
this.topLayout.setColumnFlex(1,2);
this.topBox=new qx.ui.container.Composite(this.topLayout);
this.iconChooser=null;
},members:{create:function(V){try{var bh=0;
var be=0,bf=1,bc=2,bd=3;
this.setLegend(this.trc(E,I,V.getNamespaceStr()));
var bb=net.watchee.util.NEW_CONTAINERID_PLACEHOLDER==V.getContainerId();
var ba=bb?m:V.getContainerId();
this.containerIdField=new qx.ui.form.TextField(ba);
this.topBox.add(new qx.ui.basic.Label(this.trc(j,J)),{row:bh,column:be});
this.topBox.add(this.containerIdField,{row:bh,column:bf});
this.iconButton=new qx.ui.form.Button(null,net.watchee.STATIC_ICON_URL_PATH+V.getIcon());
this.iconButton.setUserData(k,V.getIcon());
this.iconButton.addListener(t,function(e){this.iconChooser.open();
},this);

if(this.iconChooser==null){this.iconChooser=new track.util.IconChooser(this.trackGui);
this.iconChooser.addListener(C,function(e){this.iconButton.setIcon(net.watchee.STATIC_ICON_URL_PATH+e.getData());
this.iconButton.setUserData(k,e.getData());
},this);
}this.topBox.add(this.iconButton,{row:bh++,column:bc,rowSpan:2});
var Y=bb?m:V.getMenuLabel(m);
this.menuNameField=new qx.ui.form.TextField(Y);
this.topBox.add(new qx.ui.basic.Label(this.trc(j,v)),{row:bh,column:be});
this.topBox.add(this.menuNameField,{row:bh++,column:bf});
this.titleNameField=new qx.ui.form.TextField(V.getContainerTitle(m));
this.topBox.add(new qx.ui.basic.Label(this.trc(j,w)),{row:bh,column:be});
this.topBox.add(this.titleNameField,{row:bh,column:bf});
this.sendIconCheckBox=new qx.ui.form.CheckBox(this.trc(j,A));
this.sendIconCheckBox.setToolTipText(this.trc(y,s));
this.sendIconCheckBox.setValue(true);
this.topBox.add(this.sendIconCheckBox,{row:bh++,column:bc});
this.add(this.topBox);
this.poiAttribConfigContainer=new track.poiconfig.PoiAttribConfigContainer();
this.add(this.poiAttribConfigContainer);
this.poiConfigGPSDataInfo=new track.poiconfig.PoiConfigGPSDataInfo();
this.add(this.poiConfigGPSDataInfo);
var bg=V.getPoiAttribConfigArr();
bg.sort(function(a,b){return a.getRow()-b.getRow();
});

for(var W=0;W<bg.length;W++){var X=bg[W];

if(X.getId()==null){this.trackGui.errorMsgBoxDeveloper(K+X.toCSV());
continue;
}
if(X.getId().indexOf(B)==0){this.poiConfigGPSDataInfo.setObj(X.getId(),X.getLabel());
}else{this.poiAttribConfigContainer.createIdBox(bg[W]);
}}this.poiConfigGPSDataInfo.create();
}catch(bi){this.trackGui.errorMsgBoxDeveloper(z+bi);
}},getContainerIdFromTextField:function(){return this.containerIdField.getValue();
},_getContainerId:function(){var bj=org.xmlBlaster.util.trim(this.getContainerIdFromTextField());

if(bj==net.watchee.util.NEW_CONTAINERID_PLACEHOLDER){this.info("Can't save containerId "+bj);
return null;
}
if(bj==null||bj.length<1){this.info("Can't save empty containerId");
return null;
}
if(bj.indexOf(o)!=-1||bj.indexOf(M)!=-1||bj.indexOf(D)!=-1||bj.indexOf(l)!=-1||bj.indexOf(H)!=-1||bj.indexOf(q)!=-1||bj.indexOf(p)!=-1||bj.indexOf(F)!=-1){this.trackGui.msgBox.errorMsgBox(this.trc(r,u));
return null;
}return bj;
},sendToDevice:function(bk,bl){var bo=this._getContainerId();

if(bo==null)return;
var bq=new net.watchee.PropertyCollection(O,net.watchee.BuddyListTO.TYPE_ALL);
var by=h+bo;
if(bl!=net.watchee.util.NEW_CONTAINERID_PLACEHOLDER&&bl!=bo){this.trackGui.sendActionToDeviceCSV(bk,h+bl,f,true);
}else{var bw=by+G;
this.trackGui.sendActionToDeviceCSV(bk,bw,f,true);
}var bw=S+bo;
var bn=org.xmlBlaster.util.trim(this.menuNameField.getValue());

if(bn.length>0)bw+=T+bn;
var bp=org.xmlBlaster.util.trim(this.titleNameField.getValue());

if(bp.length>0)bw+=d+bp;
var bz=org.xmlBlaster.util.trim(this.iconButton.getUserData(k));

if(bz!=null&&bz.length>0){bw+=Q+bz;

if(this.sendIconCheckBox.getValue()){var bx=bz.split(N)[1];
bw+=R+bx;
bw+=P+net.watchee.getIconBlobBase64(net.watchee.STATIC_ICON_URL_PATH+bz);
}}
if(bw.length>0){bw=by+bw;
var bv=new net.watchee.PropertyPair(i,bw);
bq.add(bv);
var br=this.trackGui.sendActionToDeviceCSV(bk,bw,i,true);
}var bs=m;
var bu=c;
var bt=this.poiAttribConfigContainer.getPoiAttribConfigCSVArr();

for(var bm=0;bm<bt.length;bm++){var bw=by+l+bt[bm].csv;

if(bs!=m)bs+=l;
bs+=bw+g;
var br=this.trackGui.sendActionToDeviceCSV(bk,bw,bu,true);
}},saveOnServer:function(bA,bB){var bB=bB||this.trackGui.getMyLoginName();
var bF=this._getContainerId();

if(bF==null)return;
var bI=new net.watchee.PropertyCollection(O,net.watchee.BuddyListTO.TYPE_ALL);
var bQ=h+bF;
var bO=S+bF;
var bE=org.xmlBlaster.util.trim(this.menuNameField.getValue());

if(bE.length>0)bO+=T+bE;
var bG=org.xmlBlaster.util.trim(this.titleNameField.getValue());

if(bG.length>0)bO+=d+bG;
var bR=org.xmlBlaster.util.trim(this.iconButton.getUserData(k));

if(bR!=null&&bR.length>0){bO+=Q+bR;

if(this.sendIconCheckBox.getValue()){var bP=bR.split(N)[1];
bO+=R+bP;
bO+=P+net.watchee.getIconBlobBase64(net.watchee.STATIC_ICON_URL_PATH+bR);
}}
if(bO.length>0){bO=bQ+bO;
var bK=new net.watchee.PropertyPair(i,bO);
bI.add(bK);
}
if(net.watchee.PoiConfig.inputConfigSeperatedByNewLine){var bJ=m;
var bL=c;
var bD=this.poiAttribConfigContainer.getPoiAttribConfigCSVArr();

for(var bC=0;bC<bD.length;bC++){var bO=bQ+l+bD[bC].csv;

if(bJ!=m)bJ+=l;
bJ+=bO+g;
}var bH=this.poiConfigGPSDataInfo.getPoiAttribConfigCSVArr();

for(var bC=0;bC<bH.length;bC++){var bO=bQ+bH[bC].csv;
bJ+=l+bO+g;
}bJ=org.xmlBlaster.util.trim(bJ);
var bK=new net.watchee.PropertyPair(bL,bJ);
bI.add(bK);
}else{var bJ=m;
var bL=x;
var bD=this.poiAttribConfigContainer.getPoiAttribConfigCSVArr();

for(var bC=0;bC<bD.length;bC++){var bM=bL+bD[bC].id;
var bO=bQ+l+bD[bC].csv;
bO=org.xmlBlaster.util.trim(bO);
var bK=new net.watchee.PropertyPair(bM,bO);
bI.add(bK);
}var bH=this.poiConfigGPSDataInfo.getPoiAttribConfigCSVArr();

for(var bC=0;bC<bH.length;bC++){var bM=bL+bH[bC].id;
var bO=bQ+l+bH[bC].csv;
bO=org.xmlBlaster.util.trim(bO);
var bK=new net.watchee.PropertyPair(bM,bO);
bI.add(bK);
}}var bN=bI.toXml();
this.trackGui.sendInputConfig(bB,bF,bN);
}}});
})();
(function(){var gO="textiles.png",gN="photography.png",gM="hairsalon.png",gL="pool.png",gK="cloudsun.png",gJ="casino.png",gI="exit.png",gH="ancienttempleruin.png",gG="computer.png",gF="ruins.png",jg="mosque.png",jf="recycle.png",je="girlfriend.png",jd="vet.png",jc="mainroad.png",jb="gourmet.png",ja="speed120.png",iY="schrink.png",iX="hostel.png",iW="garden.png",gV="cross.png",gW="skateboarding.png",gT="hotel.png",gU="speed130.png",gR="tram.png",gS="climbing.png",gP="liquor.png",gQ="realestate.png",gX="resort.png",gY="days-mer.png",eg="oilpumpjack.png",ef="basketball.png",ei="info.png",eh="cluster2.png",ek="speed50.png",ej="currencyexchange.png",em="cricket.png",el="church2.png",ee="billiard.png",ed="hiking-tourism.png",cC="speed30.png",cD="fitnesscenter.png",cE="tapas.png",cF="hotel1star.png",cG="wednesday.png",cH="gifts.png",cI="hunting.png",cJ="restaurantgourmet.png",cK="sunday.png",cL="steamtrain.png",jQ="upright.png",jP="powerplant.png",jO="convenience.png",jN="family.png",jU="speed110.png",jT="tunnel.png",jS="speed80.png",jR="bullfight.png",jW="days-dim.png",jV="embassy.png",iz="fortress.png",iA="smokingarea.png",ix="music-hiphop.png",iy="movierental.png",iD="powersubstation.png",iE="bench.png",iB="dog-leash.png",iC="fire-extinguisher.png",iv="youthhostel.png",iw="restaurantgreek.png",fB="geyser.png",fA="gondola.png",fD="restaurantmexican.png",fC="places-unvisited.png",fx="airport.png",fw="waterwellpump.png",fz="jogging.png",fy="airplane-sport.png",fv="festival.png",fu="fjord.png",iM="music-rock.png",iN="chapel.png",iO="pagoda.png",iP="clothes-female.png",iI="museum-naval.png",iJ="snow.png",iK="shoes.png",iL="tennis.png",iR="spelunking.png",iS="motorcycle.png",fL="explosion.png",fK="upthenleft.png",fJ="university.png",fI="video.png",fH="expert.png",fG="speed100.png",fF="museum-war.png",fE="headstonejewish.png",fN="fishingshop.png",fM="library.png",ds="turnright.png",dt="moderntower.png",du="hospital.png",dv="satursday.png",dw="ropescourse.png",dx="motorbike.png",dy="highway.png",dz="anniversary.png",dA="restaurantturkish.png",dB="stadium.png",gm="lake.png",gl="museum.png",gk="days-vie.png",gj="villa.png",gq="music-classical.png",gp="sailboat.png",go="amphitheater.png",gn="skiing.png",gu="telephone.png",gt="world.png",jx="circus.png",jy="downthenright.png",jv="bankpound.png",jw="restaurantafrican.png",jt="home.png",ju="strike1.png",jr="friends.png",js="australianfootball.png",jB="music.png",jC="court.png",cb="olympicsite.png",ca="disabledparking.png",cd="cocktail.png",cc="suv.png",cf="agriculture3.png",ce="friday.png",ch="cluster3.png",cg="carrepair.png",bY="photoleft.png",bX="cyclingsport.png",eF="animals.png",eG="nanny.png",eH="speed60.png",eI="cathedral2.png",eB="cabin.png",eC="judo.png",eD="racing.png",eE="restaurant-barbecue.png",ez="modernmonument.png",eA="petroglyphs.png",hv="wifi.png",hu="firemen.png",ht="fallingrocks.png",hs="jewishquarter.png",hr="days-ter.png",hq="cluster5.png",hp="shelter-picnic.png",ho="stoplight.png",hn="firstaid.png",hm="days-mar.png",p="massage.png",q="monday.png",n="dentist.png",o="Icon Chooser",t="photodown.png",u="bankeuro.png",r="snowmobiling.png",s="baseball.png",v="flowers.png",w="days-jue.png",cR="playground.png",cQ="flood.png",cT="shore.png",cS="lockerrental.png",cN="teahouse.png",cM="fishing.png",cP="days-sab.png",cO="panoramic180.png",cV="taxiway.png",cU="bigcity.png",bB="tools.png",bC="karting.png",bD="airport-apron.png",bE="prison.png",bF="clouds.png",bG="skilift.png",bH="wetland.png",bI="terrace.png",bz="days-seg.png",bA="tent.png",dX="pens.png",dW="days-sex.png",dV="cablecar.png",dU="lock.png",ec="museum-art.png",eb="agriculture2.png",ea="hotel3stars.png",dY="fireworks.png",dT="pets.png",dS="sun.png",dN="atm.png",dM="downthenleft.png",dL="cinema.png",dK="tower.png",dR="poi/icons/",dQ="wedding.png",dP="worldheritagesite.png",dO="speedhump.png",dJ="artgallery.png",dI="daycare.png",br="bar.png",bs="up.png",bt="revolution.png",bu="waterfall.png",bv="clothes.png",bw="baskteball2.png",bx="findjob.png",by="yoga.png",bp="photoup.png",bq="upthenright.png",jE="watermill.png",jD="icecream.png",jG="statue.png",jF="left.png",jI="cyclingmountainnotrated.png",jH="gateswalls.png",jK="photodownright.png",jJ="newsagent.png",jM="campingsite.png",jL="rattlesnake.png",gD="company.png",gE="forest.png",gB="restaurantthai.png",gC="watertower.png",gz="pizza.png",gA="helicopter.png",gx="spaceport.png",gy="downright.png",gv="cathedral.png",gw="amphitheater-tourism.png",fj="trash.png",fi="shelter-sleeping.png",fh="usfootball.png",fg="toilets.png",ff="beautiful.png",fe="park.png",fd="rightthendown.png",fc="country.png",fl="restaurantkorean.png",fk="winery.png",cw="cyclingmountain4.png",cx="palace.png",cy="foodtruck.png",cz="iceskating.png",cs="snowshoeing.png",ct="turnleft.png",cu="perfumery.png",cv="ophthalmologist.png",cA="videogames.png",cB="trafficenforcementcamera.png",Y="zipline.png",X="speed20.png",bb="right.png",ba="camping.png",U="diving.png",T="party.png",W="wineyard.png",V="fountain.png",S="shoppingmall.png",R="cyclingmountain1.png",hU="cemetary.png",hV="toys.png",hS="hotairballoon.png",hT="bomb.png",hY="observatory.png",ia="bridgemodern.png",hW="places-visited.png",hX="photo.png",hQ="truck.png",hR="days-qui.png",gc="sneakers.png",gb="entrance.png",ga="nursery.png",fY="gun.png",gg="justice.png",gf="photoupright.png",ge="track.util.IconChooser",gd="soccer.png",gi="snowboarding.png",gh="cycling.png",dh="supermarket.png",di="powerlinepole.png",dj="cruise.png",dk="regroup.png",dl="glacier.png",dm="leftthendown.png",dn="cluster4.png",dp="days-lun.png",dq="rugby.png",dr="tailor.png",hc="sailboat-tourism.png",hd="military.png",ha="cluster.png",hb="club.png",hg="days-dom.png",hh="shower.png",he="vespa.png",hf="apartment.png",hi="followpath.png",hj="smallcity.png",g="rightthenup.png",f="aestheticscenter.png",j="church.png",h="bowling.png",b="cave.png",a="bicycleparking.png",d="window title",c="coffee.png",m="park-urban.png",k="waterwell.png",bT="stop.png",bU="golf.png",bV="skijump.png",bW="gym.png",bP="corral.png",bQ="port.png",bR="days-sam.png",bS="dam.png",bN="villa-tourism.png",bO="handball.png",ew="paint.png",ev="elevator.png",eu="picnic.png",et="days-jeu.png",es="seniorsite.png",er="carrental.png",eq="taxi.png",ep="mobilephonetower.png",eo="museum-archeological.png",en="audio.png",fU="atv.png",fV="waitingroom.png",fS="sciencecenter.png",fT="cyclingmountain2.png",fQ="waterskiing.png",fR="iconChanged",fO="windmill.png",fP="restaurantfishchips.png",fW="deptstore.png",fX="mine.png",jk="hats.png",jj="poker.png",jm="boxing.png",jl="cyclinguncategorized.png",jo="karate.png",jn="train.png",jq="citysquare.png",jp="photoright.png",ji="radiation.png",jh="tuesday.png",x="phones.png",y="strike.png",z="restaurantindian.png",A="museum-science.png",B="surfing.png",C="airport-runway.png",D="horseriding.png",E="parking.png",F="magicshow.png",G="photoupleft.png",da="rowboat.png",cY="historicalquarter.png",cX="restaurantchinese.png",cW="construction.png",de="water.png",dd="findajob.png",dc="cyclingfeedarea.png",db="drugs.png",dg="restaurant-romantic.png",df="days-qua.png",eN="leftthenup.png",eO="police2.png",eL="bus.png",eM="text.png",eR="sailboat-sport.png",eS="hanggliding.png",eP="doctor.png",eQ="fire.png",eJ="bank.png",eK="agriculture.png",hD="customs.png",hC="car.png",hF="castle.png",hE="fossils.png",hz="airplane-tourism.png",hy="drinkingwater.png",hB="arch.png",hA="disability.png",hx="bridge.png",hw="windturbine.png",fr="monastery.png",fq="carwash.png",ft="aircraft-small.png",fs="airport-terminal.png",fn="restaurantmediterranean.png",fm="grocery.png",fp="speed40.png",fo="dancinghall.png",hl="agriculture4.png",hk="hiking.png",iH="bungalow.png",bo="dates.png",iF="pedestriancrossing.png",iG="drinkingfountain.png",iU="hotel5stars.png",iV="cyclingmountain3.png",iQ="photodownleft.png",iT="hotel2stars.png",ex="click",ey="templehindu.png",cp="patisserie.png",co="panoramic.png",cn="archery.png",cm="soccer2.png",cl="beach.png",ck="planecrash.png",cj="downleft.png",ci="icehockey.png",cr="ancienttemple.png",cq="kayak.png",eX="door.png",eY="aquarium.png",fa="lighthouse.png",fb="days-ven.png",eT="bread.png",eU="restaurant-buffet.png",eV="bags.png",eW="thunder.png",jz="subway.png",jA="waterpark.png",io="theater.png",im="laundromat.png",iq="windsurfing.png",ip="restaurantjapanese.png",is="speed90.png",ir="cyclingsprint.png",iu="conference.png",it="nordicski.png",gs="crossingguard.png",gr="restaurant-fish.png",dG="upleft.png",dH="postal.png",dE="restaurantitalian.png",dF="hotel4stars.png",dC="fastfood.png",dD="laboratory.png",bL="bobsleigh.png",bM="school.png",bJ="speed70.png",bK="museum-crafts.png",bj="administration.png",bi="bookstore.png",bh="gazstation.png",bg="rain.png",bn="workoffice.png",bm="monument.png",bl="sight.png",bk="zoo.png",bd="escalator-up.png",bc="farm.png",id="themepark.png",ie="headstone.png",ig="thursday.png",ih="tennis2.png",ii="personalwatercraft.png",ij="concessionaire.png",ik="museum-historical.png",il="synagogue.png",ib="butcher.png",ic="restaurant.png",M="jewelry.png",L="down.png",O="restaurantkebab.png",N="riparian.png",I="clothes-male.png",H="convent.png",K="sauna.png",J="canoe.png",Q="seals.png",P="tollstation.png",hI="ancientmonument.png",hJ="factory.png",hG="dog-offleash.png",hH="music-live.png",hM="escalator-down.png",hN="parkandride.png",hK="pool-indoor.png",hL="days-mie.png",hO="communitycentre.png",hP="accident.png",be="police.png",bf="publicart.png";
qx.Class.define(ge,{extend:track.util.WindowWithHelpIcon,construct:function(jX){track.util.WindowWithHelpIcon.call(this);
this.trackGui=jX;
this.setCaption(this.trc(d,o));
this.setWidth(400);
this.setLayout(new qx.ui.layout.Grow());
this.scroller=new qx.ui.container.Scroll();
this.add(this.scroller);
var jY=new qx.ui.layout.Flow();
this.container=new qx.ui.container.Composite(jY);
this.container.set({allowShrinkY:false});
this.scroller.add(this.container);
this.path=dR;
this.filelist=[hP,bj,f,eb,cf,hl,eK,ft,fy,hz,bD,fx,C,fs,go,gw,hI,cr,gH,eF,dz,hf,eY,cn,hB,dJ,dN,fU,en,js,eV,u,eJ,jv,br,s,ef,bw,cl,ff,iE,a,cU,ee,bL,hT,bi,h,jm,eT,ia,hx,jR,iH,eL,ib,eB,dV,ba,jM,J,hC,er,cg,fq,gJ,hF,eI,gv,b,hU,iN,el,j,dL,jx,jq,gS,iP,I,bv,bF,gK,hb,eh,ch,dn,hq,ha,cd,c,hO,gD,gG,ij,iu,cW,jO,H,bP,fc,jC,em,gs,gV,dj,ej,hD,dc,R,fT,iV,cw,jI,gh,bX,ir,jl,bS,fo,bo,dI,jW,hg,et,w,dp,hm,gY,hL,df,hR,cP,bR,bz,dW,hr,fb,gk,n,fW,hA,ca,U,eP,iB,hG,eX,cj,L,gy,dM,jy,iG,hy,db,ev,jV,gb,hM,bd,gI,fH,fL,hJ,ht,jN,bc,dC,fv,dd,bx,iC,hu,eQ,dY,hn,cM,fN,cD,fu,cQ,v,hi,cy,gE,iz,hE,V,ce,jr,iW,jH,bh,fB,cH,je,dl,bU,fA,jb,fm,fY,bW,gM,bO,eS,jk,fE,ie,gA,dy,hk,ed,cY,jt,D,du,iX,hS,cF,iT,ea,dF,iU,gT,cI,jD,ci,cz,ei,M,hs,fz,eC,gg,jo,bC,cq,dD,gm,im,jF,dm,eN,fM,fa,gP,cS,dU,F,jc,p,hd,fX,ep,ez,dt,fr,q,bm,jg,dx,iS,iy,eo,ec,bK,ik,iI,gl,A,fF,gq,ix,hH,jB,iM,eG,jJ,it,ga,hY,eg,cb,cv,iO,ew,cx,cO,co,hN,E,fe,m,T,cp,iF,dX,cu,ii,eA,dT,x,iQ,t,jK,gN,bY,hX,jp,G,bp,gf,eu,gz,fC,hW,ck,cR,jj,eO,be,hK,gL,bQ,dH,di,jP,iD,bE,bf,eD,ji,bg,jL,gQ,jf,dk,gX,jw,eE,eU,cX,fP,gr,cJ,iw,z,dE,ip,O,fl,fn,fD,ic,dg,gB,dA,bt,bb,fd,g,N,dw,da,dq,gF,gp,eR,hc,dv,K,bM,iY,fS,Q,es,hp,fi,iK,S,cT,hh,bl,gW,gn,bV,bG,hj,iA,gc,gi,r,iJ,cs,cm,gd,gx,fG,jU,ja,gU,X,cC,fp,ek,eH,bJ,jS,is,dO,iR,dB,jG,cL,ho,bT,ju,y,jz,cK,dS,dh,B,cc,il,dr,cE,eq,cV,cN,gu,ey,ih,iL,bA,bI,gO,eM,io,id,eW,ig,fg,P,bB,dK,hV,cB,jn,gR,fj,hQ,jh,jT,ct,ds,fJ,dG,bs,jQ,fK,bq,fh,he,jd,cA,fI,gj,bN,fV,bu,jE,jA,de,fQ,gC,k,fw,dQ,cG,bH,hv,fO,iq,hw,fk,W,bn,dP,gt,by,iv,Y,bk];
this.index=0;
this.iconArr=new Array();
this.create();
},members:{_createIconWidget:function(ka){var kb=new qx.ui.basic.Image(net.watchee.STATIC_ICON_URL_PATH+ka);
kb.addListener(ex,function(e){this.setIcon(net.watchee.STATIC_ICON_URL_PATH+ka);
this.fireDataEvent(fR,ka);
},this);
return kb;
},create:function(){for(var i=0,l=this.filelist.length;i<l;i++){var kc=this.path+this.filelist[i];
var kd=this._createIconWidget(kc);
this.container.add(kd);
}},destroyPopup:function(){this.close();

if(this.trackGui!=null){this.trackGui.getMyRoot().remove(this);
this.trackGui=null;
}}}});
})();
(function(){var k="_applyLayoutChange",j="left",h="center",g="top",f="Integer",e="middle",d="bottom",c="qx.ui.layout.Flow",b="right",a="Boolean";
qx.Class.define(c,{extend:qx.ui.layout.Abstract,construct:function(l,m,n){qx.ui.layout.Abstract.call(this);

if(l){this.setSpacingX(l);
}
if(m){this.setSpacingY(m);
}
if(n){this.setAlignX(n);
}},properties:{alignX:{check:[j,h,b],init:j,apply:k},alignY:{check:[g,e,d],init:g,apply:k},spacingX:{check:f,init:0,apply:k},spacingY:{check:f,init:0,apply:k},reversed:{check:a,init:false,apply:k}},members:{verifyLayoutProperty:null,connectToWidget:function(o){qx.ui.layout.Abstract.prototype.connectToWidget.call(this,o);
o.setAllowShrinkY(false);
},renderLayout:function(p,q){var u=this._getLayoutChildren();

if(this.getReversed()){u=u.concat().reverse();
}var r=new qx.ui.layout.LineSizeIterator(u,this.getSpacingX());
var s=0;

while(r.hasMoreLines()){var t=r.computeNextLine(p);
this.__sX(t,s,p);
s+=t.height+this.getSpacingY();
}},__sX:function(v,w,x){var z=qx.ui.layout.Util;
var C=0;

if(this.getAlignX()!=j){C=x-v.width;

if(this.getAlignX()==h){C=Math.round(C/2);
}}
for(var i=0;i<v.children.length;i++){var A=v.children[i];
var D=A.getSizeHint();
var B=A.getMarginTop();
var y=A.getMarginBottom();
var top=z.computeVerticalAlignOffset(A.getAlignY()||this.getAlignY(),B+D.height+y,v.height,B,y);
A.renderLayout(C+v.gapsBefore[i],w+top,D.width,D.height);
C+=v.gapsBefore[i]+D.width;
}},_computeSizeHint:function(){return this.__sY(Infinity);
},hasHeightForWidth:function(){return true;
},getHeightForWidth:function(E){return this.__sY(E).height;
},__sY:function(F){var G=new qx.ui.layout.LineSizeIterator(this._getLayoutChildren(),this.getSpacingX());
var K=0;
var H=0;
var I=0;

while(G.hasMoreLines()){var J=G.computeNextLine(F);
I+=1;
H=Math.max(H,J.width);
K+=J.height;
}return {width:H,height:K+this.getSpacingY()*(I-1)};
}}});
})();
(function(){var a="qx.ui.layout.LineSizeIterator";
qx.Class.define(a,{extend:Object,construct:function(b,c){this.__fg=b;
this.__ta=c;
this.__tb=b.length>0;
this.__tc=0;
},members:{__fg:null,__ta:null,__tb:null,__tc:null,computeNextLine:function(d){var d=d||Infinity;

if(!this.__tb){throw new Error("No more lines to compute");
}var o=this.__fg;
var m=0;
var f=0;
var n=[];
var j=[];

for(var i=this.__tc;i<o.length;i++){var l=o[i];
var p=l.getSizeHint();
var h=this.__td(i);
var g=p.width+h;
var e=i==this.__tc;

if(!e&&f+g>d){this.__tc=i;
break;
}var k=p.height+l.getMarginTop()+l.getMarginBottom();
n.push(l);
j.push(h);
f+=g;
m=Math.max(m,k);

if(l.getLayoutProperties().lineBreak){this.__tc=i+1;
break;
}}
if(i>=o.length){this.__tb=false;
}return {height:m,width:f,children:n,gapsBefore:j};
},__td:function(q){var r=q==this.__tc;

if(r){return this.__fg[q].getMarginLeft();
}else{return Math.max(this.__fg[q-1].getMarginRight(),this.__fg[q].getMarginLeft(),this.__ta);
}},hasMoreLines:function(){return this.__tb;
}}});
})();
(function(){var l="dataType",k="",j="bottom",h="label",g="tooltip",f="click",d=":",c="16/actions/go-up.png",b="changeSelection",a="hidden",X="16/actions/go-down.png",W="#D3D3D3",V="Column name",U="Additional",T="Is editable in browser",S="Data type",R="Shall map be initially visible or hidden",Q="16/devices/phone.png",P="signature",O="float",s="Id",t="16/actions/list-remove.png",q="list",r="photoSize",o="Photo size, depends on your device (encoding type), example: encoding=jpeg&width=480&height=360&quality=normal",p="16/actions/list-add.png",m="string",n="Default",u="bool",v="big",D="List choices, separated by ;  (Example: red;green;blue)",B="track.poiconfig.PoiAttribConfigContainer",H="Initially visible",F="initialVisible:",K="int",J="checkBoxLabel",y="medium",N="barcode/QRCode",M="audio",L="small",x="image",z="groupBox",A="Length of audio recording in seconds",C="Input Fields On Device",E="map",G="Edit",I="durationSec:";
qx.Class.define(B,{extend:qx.ui.groupbox.GroupBox,construct:function(){qx.ui.groupbox.GroupBox.call(this);
this.setLegend(this.trc(z,C));
this.setIcon(xbGetQxIcon(Q));
this.setLayout(new qx.ui.layout.VBox());
this.setContentPadding(2);
this.w=80;
this.e=20;
this.r=32;
var Y=0;
this.INDEX_ID=Y++;
this.INDEX_LABEL=Y++;
this.INDEX_TYPE=Y++;
this.INDEX_VALUE=Y++;
this.INDEX_EDITABLE=Y++;
this.INDEX_ADDITIONAL=Y++;
this.lastNode=null;
this.createHeadlineBox();
},members:{removeNode:function(ba){if(ba.prev!=null)ba.prev.next=ba.next;

if(ba.next!=null)ba.next.prev=ba.prev;
},addBeforeNode:function(bb,bc){bb.next=bc;
bb.prev=bc.prev;
bb.next.prev=bb;

if(bb.prev!=null)bb.prev.next=bb;
},addAfterNode:function(bd,be){bd.prev=be;
bd.next=be.next;
bd.prev.next=bd;

if(bd.next!=null)bd.next.prev=bd;
},raiseNode:function(bf){var bg=bf.prev;

if(bg==null)return ;
this.addBefore(bf.data,bg.data);
this.removeNode(bf);
this.addBeforeNode(bf,bg);
this.updateEnabledState(bf);
this.updateEnabledState(bg);
},sinkNode:function(bh){var bi=bh.next;

if(bi==null)return ;
this.addAfter(bh.data,bi.data);
this.removeNode(bh);
this.addAfterNode(bh,bi);
this.updateEnabledState(bh);
this.updateEnabledState(bi);
},updateEnabledState:function(bj){if(bj==null)return;
bj.up.setEnabled(bj.prev!=null);
bj.down.setEnabled(bj.next!=null);
},createHeadlineBox:function(){var bk=new qx.ui.container.Composite(new qx.ui.layout.HBox(3));
var w=this.w;
bk.add(new qx.ui.basic.Label(this.trc(h,s)).set({width:w,alignY:j}));
bk.add(new qx.ui.basic.Label(this.trc(h,V)).set({width:w*1.5,alignY:j}));
bk.add(new qx.ui.basic.Label(this.trc(h,S)).set({width:w*1.5,alignY:j}));
bk.add(new qx.ui.basic.Label(this.trc(h,n)).set({width:w,alignY:j}));
var bm=new qx.ui.basic.Label(this.trc(h,G));
bm.setToolTipText(this.trc(g,T));
bk.add(bm.set({width:this.e,alignY:j}));
var bl=new qx.ui.basic.Label(this.trc(h,U));
bl.set({width:w*2,alignY:j});
bk.add(bl);
bk.add(new qx.ui.form.Button(null,xbGetQxIcon(c)).set({width:this.r,visibility:a}));
bk.add(new qx.ui.form.Button(null,xbGetQxIcon(X)).set({width:this.r,visibility:a}));
this.addInputControlButton=new qx.ui.form.Button(null,xbGetQxIcon(p)).set({width:this.r,gap:0});
this.addInputControlButton.addListener(f,function(){var bn=new net.watchee.PoiAttribConfig(k);

while(this.lastNode!=null&&this.lastNode.next!=null){this.lastNode=this.lastNode.next;
}this.createIdBox(bn);
},this);
bk.add(this.addInputControlButton);
bk.setBackgroundColor(W);
this.headLineBox=bk;
this.add(bk);
},createIdBox:function(bo){var bC=new qx.ui.container.Composite(new qx.ui.layout.HBox(3));
var w=this.w;
var bv=new qx.ui.form.TextField(bo.getId()).set({width:w});
var bH=new qx.ui.form.TextField(bo.getLabel()).set({width:w*1.5});
var bG=new qx.ui.form.SelectBox().set({width:w*1.5});
var bI=new qx.ui.form.TextField(bo.getDefaultValue()).set({width:w});
var by=new qx.ui.form.CheckBox().set({width:this.e});
by.setValue(bo.isEditable());
var bB=new qx.ui.container.Stack().set({width:w*2});
var bs=[this.trc(l,m),this.trc(l,K),this.trc(l,O),this.trc(l,u),this.trc(l,q),this.trc(l,x),this.trc(l,M),this.trc(l,N),this.trc(l,P),this.trc(l,E)];
var bD=[net.watchee.PoiAttribConfig.STRING,net.watchee.PoiAttribConfig.INT,net.watchee.PoiAttribConfig.FLOAT,net.watchee.PoiAttribConfig.BOOL,net.watchee.PoiAttribConfig.LIST,net.watchee.PoiAttribConfig.IMAGE,net.watchee.PoiAttribConfig.AUDIO,net.watchee.PoiAttribConfig.BARCODE,net.watchee.PoiAttribConfig.SIGNATURE,net.watchee.PoiAttribConfig.MAP];

for(var i=0;i<bs.length;i++){var bJ=new qx.ui.form.ListItem(bs[i],null,bD[i]);
bG.add(bJ);

if(bo.type==bD[i]){bG.setSelection([bJ]);
}}bG.addListener(b,function(e){var bK=e.getData()[0].getModel();
bB.hide();
bv.setReadOnly(false);

if(bK==net.watchee.PoiAttribConfig.LIST){bB.setSelection([bx]);
var bL=bv.getValue()||k;

if(bL==net.watchee.PoiAttribConfig.IMAGE||bL==net.watchee.PoiAttribConfig.AUDIO||bL==net.watchee.PoiAttribConfig.BARCODE||bL==net.watchee.PoiAttribConfig.SIGNATURE||bL==net.watchee.PoiAttribConfig.MAP){bv.setValue(k);
}bB.show();
}else if(bK==net.watchee.PoiAttribConfig.IMAGE){bv.setValue(net.watchee.PoiAttribConfig.IMAGE);
bv.setReadOnly(true);
bB.setSelection([bw]);
bB.show();
}else if(bK==net.watchee.PoiAttribConfig.AUDIO){bv.setValue(net.watchee.PoiAttribConfig.AUDIO);
bv.setReadOnly(true);
bB.setSelection([br]);
bB.show();
}else if(bK==net.watchee.PoiAttribConfig.BARCODE){bv.setValue(net.watchee.PoiAttribConfig.BARCODE);
bv.setReadOnly(true);
}else if(bK==net.watchee.PoiAttribConfig.SIGNATURE){bv.setValue(net.watchee.PoiAttribConfig.SIGNATURE);
bv.setReadOnly(true);
}else if(bK==net.watchee.PoiAttribConfig.MAP){bv.setValue(net.watchee.PoiAttribConfig.MAP);
bv.setReadOnly(true);
bB.setSelection([bA]);
bB.show();
}else{var bL=bv.getValue()||k;

if(bL==net.watchee.PoiAttribConfig.IMAGE||bL==net.watchee.PoiAttribConfig.AUDIO||bL==net.watchee.PoiAttribConfig.BARCODE||bL==net.watchee.PoiAttribConfig.SIGNATURE||bL==net.watchee.PoiAttribConfig.MAP){bv.setValue(k);
}}},this);
var bx=new qx.ui.form.TextField(bo.list).set({width:w});
bx.setToolTipText(this.trc(g,D));
bB.add(bx);
var bA=new qx.ui.form.CheckBox(this.trc(J,H));
bA.setToolTipText(this.trc(g,R));
bB.add(bA);
var bw=new qx.ui.form.ComboBox().set({width:w});
bw.setToolTipText(this.trc(g,o));
var bz=[L,y,v];
var bE=bz[0];

if(bo.type==net.watchee.PoiAttribConfig.IMAGE)bE=bo.getFlag().split(d)[1];

for(var i=0;i<bz.length;i++){var bJ=new qx.ui.form.ListItem(bz[i]);
bw.add(bJ);
}bw.setValue(bE);
bB.add(bw);
var bp=5;

if(bo.type==net.watchee.PoiAttribConfig.AUDIO)bp=org.xmlBlaster.util.toNumber(bo.getFlag().split(d)[1]);
var br=new qx.ui.form.Spinner(1,bp,20).set({width:w});
br.setToolTipText(this.trc(g,A));
bB.add(br);
var bt=new qx.ui.form.Button(null,xbGetQxIcon(t)).set({width:this.r,gap:0});
bt.addListener(f,function(){this.remove(bu.data);
this.removeNode(bu);
this.updateEnabledState(bu.prev);
this.updateEnabledState(bu.next);
},this);
var bF=new qx.ui.form.Button(null,xbGetQxIcon(c)).set({width:this.r,enabled:false,gap:0});
bF.addListener(f,function(){this.raiseNode(bu);
},this);
var bq=new qx.ui.form.Button(null,xbGetQxIcon(X)).set({width:this.r,enabled:false,gap:0});
bq.addListener(f,function(){this.sinkNode(bu);
},this);
bC.add(bv);
bC.add(bH);
bC.add(bG);
bC.add(bI);
bC.add(by);
bC.add(bB);
bC.add(bF);
bC.add(bq);
bC.add(bt);
bG.fireDataEvent(b,bG.getSelection());
bC.setBackgroundColor(W);
var bu={up:bF,down:bq,prev:this.lastNode,data:bC,next:null};

if(this.lastNode!=null){this.lastNode.down.setEnabled(true);
bF.setEnabled(true);
this.lastNode.next=bu;
}this.lastNode=bu;
this.add(bC);
return bC;
},getPoiAttribConfigCSVArr:function(){var bS=new Array();
var bN=this.getChildren();

for(var bM=0;bM<bN.length;bM++){if(bN[bM]==this.headLineBox)continue;
var bO=new net.watchee.PoiAttribConfig();
bO.setRow((2*bM)+20);
var bP=bN[bM].getChildren();
bO.setId(bP[this.INDEX_ID].getValue());
bO.setLabel(bP[this.INDEX_LABEL].getValue());
var bV=bP[this.INDEX_TYPE].getSelection()[0].getModel();
bO.setType(bV);
var bR=bP[this.INDEX_VALUE].getValue();

if(bR==null)bR=k;
bO.setDefaultValue(bR);
var bQ=k+bP[this.INDEX_EDITABLE].getValue();
bO.setEditable(bQ);
var bT=bP[this.INDEX_ADDITIONAL].getSelection()[0];
var bX=bT.getValue();
if(bV==net.watchee.PoiAttribConfig.LIST){bO.setList(bX);
}else if(bV==net.watchee.PoiAttribConfig.IMAGE){bO.setFlagPair(r,bX);
}else if(bV==net.watchee.PoiAttribConfig.AUDIO){bO.setFlag(I+bX);
}else if(bV==net.watchee.PoiAttribConfig.MAP){bO.setFlag(F+bX);
}var bW=bO.toCSV();
var bU={id:bP[this.INDEX_ID].getValue(),csv:bW};
bS.push(bU);
}return bS;
}}});
})();
(function(){var q="label",p="type",o=";",n="#D3D3D3",m="track.poiconfig.PoiConfigGPSDataInfo",l="editable",k="Buddy Name",j="Timestamp",i="groupBoxTitle",h="status",c="Status",g="Address",f="Lat / Lon",b="16/devices/computer.png",a="Additional Columns In Web Report View (not sent to device)",e="Open;Processing;Done",d=",";
qx.Class.define(m,{extend:qx.ui.groupbox.GroupBox,construct:function(){qx.ui.groupbox.GroupBox.call(this);
this.setLegend(this.trc(i,a));
this.setIcon(xbGetQxIcon(b));
this.setLayout(new qx.ui.layout.Grow());
this.setContentPadding(2);
this.box=new qx.ui.container.Composite(new qx.ui.layout.VBox(5));
this.box.setBackgroundColor(n);
this.add(this.box);
this.obj={_date:{label:this.trc(q,j),checked:false,type:net.watchee.PoiAttribConfig.STRING,editable:false,enabled:false},_loginName:{label:this.trc(q,k),checked:false,type:net.watchee.PoiAttribConfig.STRING,editable:false,enabled:false},_latlon:{label:this.trc(q,f),checked:false,type:net.watchee.PoiAttribConfig.HTML,editable:false,enabled:false},_address:{label:this.trc(q,g),checked:false,type:net.watchee.PoiAttribConfig.STRING,editable:true,enabled:true},_status:{label:this.trc(q,c),checked:false,type:net.watchee.PoiAttribConfig.LIST,editable:true,list:this.trc(h,e),enabled:false}};
},members:{setObj:function(r,s){if(this.obj.hasOwnProperty(r)){this.obj[r].label=s;
this.obj[r].checked=true;
}},create:function(){for(id in this.obj){this._createBox(id,this.obj[id].label,this.obj[id].checked,this.obj[id].type,this.obj[id].editable,this.obj[id].enabled);
}},_createBox:function(t,u,v,x,y,z){var w=80;
var A=new qx.ui.container.Composite(new qx.ui.layout.HBox(10));
var C=new qx.ui.form.CheckBox(t).set({width:w});
C.setValue(v);
var D=new qx.ui.form.TextField(u).set({width:w*1.5});
A.setUserData(p,x);
var E=new qx.ui.form.CheckBox(this.trc(q,l)).set({width:w});
E.setValue(y);
E.setEnabled(z);
A.add(C);
A.add(D);
A.add(E);

if(x==net.watchee.PoiAttribConfig.LIST&&t==net.watchee.GPSData.KEY_STATUS_POI){var B=new qx.ui.form.TextField(this.obj._status.list).set({width:3*w});
B.setEnabled(false);
A.add(B);
}A.setBackgroundColor(n);
this.box.add(A);
},getPoiAttribConfigCSVArr:function(){var L=new Array();
var G=this.box.getChildren();

for(var F=0;F<G.length;F++){var M=G[F];
var H=M.getChildren();
var J=H[0];
var O=H[1];
var K=H[2];

if(J.getValue()){if(net.watchee.PoiConfig.inputConfigSeperatedByNewLine){var I=new net.watchee.PoiAttribConfig();
I.setRow(F+100);
I.setId(J.getLabel());
I.setLabel(O.getValue());
I.setType(M.getUserData(p));
I.setEditable(K.getValue());

if(I.getId()==net.watchee.GPSData.KEY_STATUS_POI){var P=H[3].getValue();
I.setDefaultValue(P.split(o)[0]);
I.setList(P);
}var Q=I.toCSV();
L.push(d+Q);
continue;
}var I=new net.watchee.PoiAttribConfig();
I.setRow(F+100);
I.setId(J.getLabel());
I.setLabel(O.getValue());
I.setType(M.getUserData(p));
I.setEditable(K.getValue());

if(I.getId()==net.watchee.GPSData.KEY_STATUS_POI){var P=H[3].getValue();
I.setDefaultValue(P.split(o)[0]);
I.setList(P);
}var Q=I.toCSV();
var N={id:J.getLabel(),csv:Q};
L.push(N);
}}return L;
}}});
})();
(function(){var h="track.geofence.GeofenceWindow",g="Manage geofence definitions",f="close",d="window title",c="16/rules/geofence.png";
var a=275;
var b=5;
qx.Class.define(h,{extend:track.util.WindowWithHelpIcon,construct:function(i){track.util.WindowWithHelpIcon.call(this);
this.trackGui=i;
this.setLayout(new qx.ui.layout.VBox());
this.setCaption(this.trc(d,g));
this.setIcon(xbGetIcon(c));
this.addListener(f,function(e){this.clear();
},this);
},members:{getGeofenceWindowTop:function(){return a;
},getGeofenceWindowLeft:function(){return b;
},createGeofenceWindow:function(){var j=new track.util.EnhancedTabView();
j.setMinWidth(200);
j.setMinHeight(200);
this.manageGeofenceTab=new track.geofence.ManageGeofenceTab(this);
this.manageGeofenceTab.createTab(j);
this.add(j);
this.trackGui.getMyRoot().add(this,{left:this.getGeofenceWindowLeft(),top:this.getGeofenceWindowTop()});
this.open();
},clear:function(){if(this.manageGeofenceTab!=null)this.manageGeofenceTab.clear();
},destroyPopup:function(){this.clear();
this.trackGui.getMyRoot().remove(this);
this.close();
this.trackGui=null;
}},destruct:function(){this.destroyPopup();
}});
})();
(function(){var m="",k="input info",j="geofenceTO",h="button",g="execute",f="</pc>",d="addGeofences",c="<pr k='__class'>Geofence</pr>",b="errorMsg",a="left",V="<pc>",U=",",T="<pr k='coordinates'>9.0,40.3,500 9.1,40.2,500</pr>",S="Geofence details",R="Geofence name:",Q="<b>Save</b>",P="Choose Geofence:",O="16/actions/dialog-ok.png",N="right",M="<New Geofence>",t="<b>Delete Geofence</b>",u="geofenceNumMax",r="track.geofence.ManageGeofenceTab",s="<pcc>",p="middle",q="tab title",n="</pcc>",o="groupbox title",v="NEW_INSTANCE",w="changeSelection",D="You are not allowed to assign more than %1 geofences",B="Manage",G="stockade123456 ",F="TK102/TK2000 SMS command:",I="Please enter geofence name",H="<pr k='name'>Geofence Company</pr>",y="GeofenceName",L="<pr k='coordinates'>9.0,40.1,500 9.1,40.0,500</pr>",K="<pr k='name'>Geofence Home</pr>",J="Bottom right (Long,Lat):",x="22/rules/geofenceManage.png",z="Upper Left (Long,Lat):",A=" ",C="22/places/user-trash.png",E=";";
qx.Class.define(r,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(W){qx.core.Object.call(this);
this.geofenceWindow=W;
this.trackGui=this.geofenceWindow.trackGui;
this.programmaticSetSelected=false;
this.currentGeofenceTO=null;
this.geofenceDrawer=null;
this.listItemNew=null;
this.tk102CoomandTextField=null;
},members:{createTab:function(X){this.tabviewPage=new qx.ui.tabview.Page(this.trc(q,B),xbGetIcon(x));
this.tabviewPage.setLayout(new qx.ui.layout.VBox(2));
X.add(this.tabviewPage);
this.tabviewPage.add(this.__ow());
this.addGeofencesEventFunc=this.trackGui.watchee.getEventManager().addListener(d,function(Y){var ba=Y.getData();
this.info("ManageGeofenceTab: Received addGeofences event");
this.__tj(new track.rulesmodel.GeofencesTO(this.trackGui,ba));
},this);
this.trackGui.getGeofences(null);
},test:function(){var bb=s+V+c+H+L+f+V+c+K+T+f+n;
var bc=net.watchee.PropertyCollections.parseXml(bb);
return this.__ow(new track.rulesmodel.GeofencesTO(this.trackGui,bc));
},__oF:function(bd,be){this.programmaticSetSelected=true;
bd.add(be);
this.programmaticSetSelected=false;
},__te:function(bf,bg,bh,bi){var bj=G+bf+U+bg+E+bh+U+bi+m;
return bj;
},__tf:function(bk){var bm=bk.getCoordinate(0);
var bl=bk.getCoordinate(1);
return this.__te(bm.getLngEW(),bm.getLatNS(),bl.getLngEW(),bl.getLatNS());
},__tg:function(bn){this.__oD();

if(bn==null){this.currentGeofenceTO=new track.rulesmodel.GeofenceTO(this.trackGui);
this.geofenceNameTextField.setEnabled(true);
this.geofenceNameTextField.setValue(m);
this.coordinate1TextField.setValue(m);
this.coordinate2TextField.setValue(m);
this.tk102CoomandTextField.setValue(m);
this.__oE(null);
}else{this.currentGeofenceTO=bn;
this.geofenceNameTextField.setEnabled(false);
this.geofenceNameTextField.setValue(this.currentGeofenceTO.getName());
var bp=this.currentGeofenceTO.getCoordinates();

if(bp.size()>0)this.coordinate1TextField.setValue(bp.getCoordinate(0).toKmlLngLatStr());

if(bp.size()>1){this.coordinate2TextField.setValue(bp.getCoordinate(1).toKmlLngLatStr());
var bo=this.__tf(bp);
this.tk102CoomandTextField.setValue(bo);
}this.__oE(bp);
}return this.currentGeofenceTO;
},geofenceDrawEvent:function(bq,br){this.geofenceDrawer=bq;
this.coordinate1TextField.setValue(bq.getKmlNW());
this.coordinate2TextField.setValue(bq.getKmlSE());
var bt=net.watchee.Coordinates.parseKmlStr(bq.getKmlNW()+A+bq.getKmlSE());
var bs=this.__tf(bt);
this.tk102CoomandTextField.setValue(bs);
},__oD:function(){if(this.geofenceDrawer!=null){this.geofenceDrawer.clearAll();
this.geofenceDrawer=null;
}},__oE:function(bu){var bu=bu||null;
this.__oD();
var bv=null;
this.geofenceDrawer=this.trackGui.watchee.getMapManager().createGeofenceDrawer(this.geofenceDrawEvent,this,bv);
this.geofenceDrawer.draw(bu);
},__th:function(bw){var bz=null;
var by=null;

if(bw==null){bz=this.trc(y,M);
by=v;
}else{bz=bw.getName();
by=bz;
}var bx=this.__oK(bz);

if(bx!=null)return bx;
bx=new qx.ui.form.ListItem(bz,null,by);
bx.setUserData(j,bw);
this.__oF(this.geofenceNameSelectBox,bx);
return bx;
},__ti:function(bA){var bB=this.__oK(bA);

if(bB!=null){this.geofenceNameSelectBox.remove(bB);
return bB;
}return null;
},__oK:function(bC){if(bC==null)return null;
var bD=this.geofenceNameSelectBox.getChildren();

for(var i=0,l=bD.length;i<l;i++){var bE=bD[i];

if(bC==bE.getModel())return bE;
}return null;
},__tj:function(bF){var bF=bF||null;
this.geofenceNameSelectBox.removeAll();
this.listItemNew=this.__th(null);

if(bF==null)return;
var bG=bF.getGeofences();

for(var i=0,l=bG.length;i<l;i++){this.__th(bG[i]);
}this.geofenceNameTextField.setEnabled(true);
this.geofenceNameTextField.setValue(m);
},__ow:function(bH){var bH=bH||null;
var bK=new qx.ui.groupbox.GroupBox(this.trc(o,S));
var bI=new qx.ui.layout.Grid(6,4);
bK.setLayout(bI);
bI.setRowAlign(0,a,p);
var bN=0;
this.geofenceNameSelectBox=new qx.ui.form.SelectBox();
var bM=new qx.ui.basic.Label(this.trc(k,P));
bK.add(bM,{row:bN,column:0});
bK.add(this.geofenceNameSelectBox,{row:bN,column:1});
this.__tj(bH);
this.geofenceNameSelectBox.addListener(w,function(e){if(this.programmaticSetSelected)return ;
var bO=(e.getData().length==0)?null:e.getData()[0];
if(bO==null)return ;

if(this.listItemNew==bO)this.__tg(null);
else this.__tg(bO.getUserData(j));
},this);
bN++;
this.geofenceNameTextField=new qx.ui.form.TextField(m);
var bM=new qx.ui.basic.Label(this.trc(k,R));
bK.add(bM,{row:bN,column:0});
bK.add(this.geofenceNameTextField,{row:bN,column:1});
this.geofenceNameTextField.setEnabled(false);
bN++;
this.coordinate1TextField=new qx.ui.form.TextField(m);
var bM=new qx.ui.basic.Label(this.trc(k,z));
bK.add(bM,{row:bN,column:0});
bK.add(this.coordinate1TextField,{row:bN,column:1});
this.coordinate1TextField.setEnabled(false);
bN++;
this.coordinate2TextField=new qx.ui.form.TextField(m);
var bM=new qx.ui.basic.Label(this.trc(k,J));
bK.add(bM,{row:bN,column:0});
bK.add(this.coordinate2TextField,{row:bN,column:1});
this.coordinate2TextField.setEnabled(false);
bN++;
this.tk102CoomandTextField=new qx.ui.form.TextField(m);
var bM=new qx.ui.basic.Label(this.trc(k,F));
bK.add(bM,{row:bN,column:0});
bK.add(this.tk102CoomandTextField,{row:bN,column:1});
this.tk102CoomandTextField.setEnabled(true);
bN++;
var bJ=new qx.ui.form.Button(this.trc(h,t),xbGetQxIcon(C));

with(bJ){setWidth(160);
setAlignX(a);
setRich(true);
}bK.add(bJ,{row:bN,column:0});
bJ.addListener(g,function(e){if(this.trackGui.watchee==null)return;
var bQ=this.currentGeofenceTO;
var bP=this.geofenceNameSelectBox.getSelection()[0];
var bR=(this.listItemNew==bP);

if(bR){this.__tg(null);
return;
}this.trackGui.sendRemoveGeofence(bQ);
this.__ti(bQ.getName());
this.__tk();
},this);
var bL=new qx.ui.form.Button(this.trc(h,Q),xbGetQxIcon(O));

with(bL){setWidth(160);
setAlignX(N);
setRich(true);
}bK.add(bL,{row:bN,column:1});
bL.addListener(g,function(e){if(this.trackGui.watchee==null)return;
var bW=this.geofenceNameSelectBox.getSelection()[0];
var bT=(this.listItemNew==bW);

if(bT){var bS=xbProperties.getInt(u,Number.MAX_VALUE);
var bY=this.geofenceNameSelectBox.getChildren().length-1;

if(bY>=bS){this.trackGui.errorMsgBox(this.trc(b,D,bS));
return;
}var name=this.geofenceNameTextField.getValue();

if(name==null||name.length<2){this.trackGui.errorMsgBox(this.trc(b,I));
return;
}this.currentGeofenceTO.setName(name);
}var bV=this.currentGeofenceTO.getKmlStr();
var bU=(this.geofenceDrawer!=null)?this.geofenceDrawer.getKmlStr():null;
this.info("Saving oldKml="+bV+" newKml="+bU);

if(bU==null){return;
}var ca=(bV!=bU);

if(ca){this.currentGeofenceTO.setCoordinatesKmlStr(bU);

if(bT){this.trackGui.sendAddGeofence(this.currentGeofenceTO);
this.__tk();
}else{this.trackGui.sendAddGeofence(this.currentGeofenceTO);
}}
if(bT){var bX=this.__th(this.currentGeofenceTO);
this.geofenceNameSelectBox.setSelection([bX]);
}},this);
this.listItemNew.setUserData(j,this.__tg(null));
return bK;
},__tk:function(){if(this.trackGui.watchee!=null)this.trackGui.getGeofences(this.trackGui.watchee.getLoginName());
},clear:function(){this.__oD();
}},destruct:function(){if(this.addGeofencesEventFunc!=null&&this.trackGui.watchee!=null)this.trackGui.watchee.getEventManager().removeListener(d,this.addGeofencesEventFunc);
this.addGeofencesEventFunc=null;
this._disposeFields();
this._disposeObjects();
}});
})();
(function(){var s="tabtitle",r="alarmChanged",q="addAlarms",p="updateFriendOf",o="confirmAlarms",n="Alarms with rule definitions",m="Event log",l="alarmCounter.enabled",k="infoMsgBox",j="No permission to view alarms of %1",d="Alarm Event Handling",i="16/alarm/alarm.png",h="<b><font color='red'>Only the newest and uncomfirmed %1 results are shown</font></b>",c="window title",b="statusAtom",f="Event counter",e="track.alarm.AlarmWindow";
var a=40;
var g=20;
qx.Class.define(e,{extend:track.util.WindowWithHelpIcon,construct:function(t,u){track.util.WindowWithHelpIcon.call(this);
this.trackGui=t;
this.buddyTO=u;
this.alarmEventTableGroup=new track.alarm.AlarmEventTableGroup(this.trackGui,this);
this.eventLog=new track.alarm.EventLog(this.trackGui,this);
this.alarmCounterTab=null;

if(xbProperties.getBoolean(l,false)){this.alarmCounterTab=new track.alarm.AlarmCounterTab(this.trackGui,this);
}this.alarmManageGroup=new track.alarm.AlarmManageGroup(this.trackGui,this,this.alarmEventTableGroup);
this.eventManageGroup=new track.alarm.AlarmManageGroup(this.trackGui,this,this.eventLog);
this.autoConfirmGroup=new track.alarm.AutoConfirmGroup(this.trackGui,this);
this.guiGroups=new Array(this.alarmEventTableGroup,this.alarmManageGroup,this.autoConfirmGroup);
this.defaultBoxSpacing=0;
this.statusAtom=null;
this.setCaption(this.trc(c,d));
this.setIcon(xbGetIcon(i));
this.defaultGroupBoxContentPadding=4;
},members:{getAlarmWindowTop:function(){if(a>200)a=100;
a+=25;
return a;
},getAlarmWindowLeft:function(){if(g>350)g=250;
g+=25;
return g;
},onPreOpen:function(){return this.requestAlarmsFromServer();
},getBuddyTO:function(){return this.buddyTO;
},getDevice:function(){return this.buddyTO.getDevice();
},statusAtomShow:function(v){this.statusAtomRemove();
this.statusAtom=new qx.ui.basic.Atom(null);
this.statusAtom.setEnabled(true);
this.statusAtom.setRich(true);
this.statusAtom.setLabel(v);
this.addAt(this.statusAtom,0);
},statusAtomRemove:function(){if(this.statusAtom!=null){this.remove(this.statusAtom);
this.statusAtom=null;
}},createAlarmWindow:function(){this.moveTo(this.getAlarmWindowLeft(),this.getAlarmWindowTop());
var x=new track.util.EnhancedTabView();
x.addPage(this.trc(s,n),this.alarmEventTableGroup.createGroup(this.defaultGroupBoxContentPadding));
x.addContent(this.alarmManageGroup.createGroup(this.defaultGroupBoxContentPadding));
x.addContent(this.autoConfirmGroup.createGroup(this.defaultGroupBoxContentPadding));
x.addPage(this.trc(s,m),this.eventLog.createGroup(this.defaultGroupBoxContentPadding));
x.addContent(this.eventManageGroup.createGroup(this.defaultGroupBoxContentPadding));

if(this.alarmCounterTab!=null){var w=x.addPage(this.trc(s,f),this.alarmCounterTab.createGroup(this.defaultGroupBoxContentPadding));
x.setSelection([w]);
}this.add(x);
this.open();
this.alarmChangedEventFunc=this.trackGui.watchee.getEventManager().addListener(r,function(y){var z=y.getData().device;

if(this.getDevice().getDeviceId()!=z.getDeviceId()){return;
}var A=y.getData().alarmTO;
this.info("AlarmWindow: Received alarmChanged event "+A.getRuleTypeId()+" for "+z.getDeviceId());

if(this.getDevice().getDeviceId()==z.getDeviceId()){if(A.isAttachedToRule()){this.alarmEventTableGroup.addAlarm(A,true);
}else{this.eventLog.addAlarm(A,true);
}
if(this.alarmCounterTab!=null){this.alarmCounterTab.onAddAlarm(A);
}}},this);
this.confirmAlarmsEventFunc=this.trackGui.watchee.getEventManager().addListener(o,function(B){var D=B.getData().loginName;

if(this.getDevice().getDeviceId()!=D){return ;
}var C=B.getData().alarmTOArr;

if(C!=null)this.info("AlarmWindow: Received confirmAlarms event for "+D+", count="+C.length);
else this.info("AlarmWindow: Received confirmAlarms event for all alarms from "+D);
},this);
this.addAlarmsEventFunc=this.trackGui.watchee.getEventManager().addListener(q,function(E){var F=E.getData().pcc;
var H=E.getData().hasMore;
var G=E.getData().loginName;

if(this.getDevice().getDeviceId()!=G){return ;
}this.info("AlarmWindow: Received "+F.size()+"addAlarms event, hasMore="+H);

if(H){this.statusAtomShow(this.trc(b,h,F.size()));
}else{this.statusAtomRemove();
}var I=new track.rulesmodel.AlarmsTO(this.trackGui,F);
this.alarmEventTableGroup.addAlarms(I);
this.eventLog.addAlarms(I);

if(this.alarmCounterTab!=null){this.alarmCounterTab.onAddAlarms(I);
}},this);
this.updateFriendOfListenerFunc=this.trackGui.watchee.getBuddyManager().getEventManager().addListener(p,function(J){if(this.buddyTO==null||J==null||J.getData()==null||J.getData().buddyTO==null||this.buddyTO.getLoginName()!=J.getData().buddyTO.getLoginName())return;
this.info("AlarmWindow: Received 'updateFriendOf' event for "+this.buddyTO.getLoginName());

if(this.alarmEventTableGroup!=null){this.alarmEventTableGroup.enforcePermission();
}
if(this.alarmManageGroup!=null){this.alarmManageGroup.enforcePermission();
}
if(this.autoConfirmGroup!=null){this.autoConfirmGroup.enforcePermission();
}},this);
},requestAlarmsFromServer:function(){if(this.getBuddyTO().hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_ALARM)){this.trackGui.getAlarms(this.getBuddyTO().getLoginName());
return true;
}else{this.trackGui.infoMsgBox(this.trc(k,j,this.getBuddyTO().getLoginName()));
return this.getBuddyTO().hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_CFG);
}},clear:function(){if(this.trackGui.watchee==null)return;

if(this.alarmChangedEventFunc!=null){this.trackGui.watchee.getEventManager().removeListener(r,this.alarmChangedEventFunc);
this.alarmChangedEventFunc=null;
}
if(this.confirmAlarmsEventFunc!=null){this.trackGui.watchee.getEventManager().removeListener(o,this.confirmAlarmsEventFunc);
this.confirmAlarmsEventFunc=null;
}
if(this.addAlarmsEventFunc!=null){this.trackGui.watchee.getEventManager().removeListener(q,this.addAlarmsEventFunc);
this.addAlarmsEventFunc=null;
}
if(this.updateFriendOfListenerFunc!=null){this.trackGui.watchee.getBuddyManager().getEventManager().removeListener(p,this.updateFriendOfListenerFunc);
this.updateFriendOfListenerFunc=null;
}this.alarmEventTableGroup.clear();
this.alarmManageGroup.clear();
this.autoConfirmGroup.clear();
},destroyPopup:function(){this.clear();
this.trackGui.getMyRoot().remove(this);
this.close();
this.trackGui=null;
}},destruct:function(){this.destroyPopup();
}});
})();
(function(){var m="tableHeader",k="info box",j="/alarm/alarmShowRuleWindow.png",h="/alarm/alarmConfirm.png",g="middle",f="",d="countAlarms=",c="Received at",b="Alarm Events of %1",a="rulename",H="#FF0000",G=",countAlarmsAttachedToRules=0",F="No position found to display on map",E="Map",D=",countAlarmsAttachedToRules=",C="Take care",B="icon/16/apps/office-calendar.png",A="Comment",z="No permission to see alarms of %1",y="Confirm",t="track.alarm.AlarmEventTableGroup",u="groupbox title",r="No matching rule found",s="Rule name",p="Type",q="Info",n="tooltip",o="cellClick",v="2009-07-01",w="Date",x="undefined";
qx.Class.define(t,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(I,J){qx.core.Object.call(this);
this.trackGui=I;
this.alarmWindow=J;
this.groupBox=null;
this.alarmEventTable=null;
this.tableQX=null;
this.tableModel=null;
this.lastrow=-1;
var K=0;
this.COLUMN_CONFIRM_BUTTON=K++;
this.COLUMN_SHOWING_RULE_WINDOW=K++;
this.COLUMN_SHOWING_ON_MAP=K++;
this.COLUMN_RULE_TYPE=K++;
this.COLUMN_DATE=K++;
this.COLUMN_RULE_NAME=K++;
this.COLUMN_INFO=K++;
this.NUM_COLUMN=K;
this.ICON_WIDTH_CELL=22;
this.ICON_WIDTH=16;
this.lastSortCol=this.COLUMN_DATE;
this.lastSortAsc=false;
this.columnWidth=[];
this.columnWidth[this.COLUMN_CONFIRM_BUTTON]=this.ICON_WIDTH_CELL;
this.columnWidth[this.COLUMN_SHOWING_RULE_WINDOW]=this.ICON_WIDTH_CELL;
this.columnWidth[this.COLUMN_SHOWING_ON_MAP]=this.ICON_WIDTH_CELL;
this.columnWidth[this.COLUMN_RULE_NAME]=80;
this.columnWidth[this.COLUMN_RULE_TYPE]=120;
this.columnWidth[this.COLUMN_DATE]=120;
this.columnWidth[this.COLUMN_INFO]=320;
this.RESPONSE_TIMEOUT_SEC=120;
},members:{getDevice:function(){return this.alarmWindow.getDevice();
},createGroup:function(L){this.groupBox=new qx.ui.groupbox.GroupBox(this.trc(u,b,this.getDevice().getNiceName()));
var M=new qx.ui.layout.VBox(0);
this.groupBox.setLayout(M);
this.groupBox.setContentPadding(L||12);
this.groupBox.add(this.__tl());
return this.groupBox;
},__tl:function(){this.tableModel=new qx.ui.table.model.Simple();
this.tableModel.setColumns([this.trc(m,y),this.trc(m,q),this.trc(m,E),this.trc(m,p),this.trc(m,c),this.trc(m,s),this.trc(m,A)]);
this.tableModel.setColumnEditable(this.COLUMN_CONFIRM_BUTTON,true);
this.tableModel.setColumnSortable(this.COLUMN_CONFIRM_BUTTON,true);
var R=new qx.ui.table.Table(this.tableModel);
this.tableQX=R;
R.set({width:600,height:280,decorator:null});
var S=2;
var O=8;
R.setRowHeight(this.ICON_WIDTH+S);
R.setPadding(0);
R.setMargin(0);
R.setAlignY(g);
R.setForceLineHeight(true);
R.getSelectionModel().setSelectionMode(qx.ui.table.selection.Model.MULTIPLE_INTERVAL_SELECTION);
var Q=R.getTableColumnModel();

for(var i=0,l=this.columnWidth.length;i<l;i++)Q.setColumnWidth(i,this.columnWidth[i]+O);
Q.setHeaderCellRenderer(this.COLUMN_DATE,new qx.ui.table.headerrenderer.Icon(B,w));
var P=this.columnWidth[this.COLUMN_CONFIRM_BUTTON];
Q.setDataCellRenderer(this.COLUMN_CONFIRM_BUTTON,new qx.ui.table.cellrenderer.Image());
this.ruleImageRenderer=new qx.ui.table.cellrenderer.Image();
Q.setDataCellRenderer(this.COLUMN_SHOWING_RULE_WINDOW,this.ruleImageRenderer);
Q.setDataCellRenderer(this.COLUMN_SHOWING_ON_MAP,new qx.ui.table.cellrenderer.Image());
var N=Q.getDataCellRenderer(this.COLUMN_RULE_TYPE);
Q.setDataCellRenderer(this.COLUMN_INFO,new qx.ui.table.cellrenderer.String(g,H));
this.doDefaultSorting();
R.addListener(o,this.cellEventClicked,this);
this.enforcePermission();
return R;
},hasPermission:function(){var T=this.alarmWindow.getBuddyTO().hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_ALARM);
return T;
},enforcePermission:function(){var U=this.hasPermission();

if(U){this.tableQX.setToolTipText(null);
}else{this.resetData();
this.tableQX.setToolTipText(this.trc(n,z,this.alarmWindow.getBuddyTO().getLoginName()));
}},doDefaultSorting:function(V,W){var V=V||this.lastSortCol;

if(W===undefined)W=this.lastSortAsc;
this.tableModel.sortByColumn(V,W);
this.tableQX.updateAppearance();
},getAlarmTO:function(X){var ba=this.tableModel.getRowData(X);
ba=ba||null;

if(ba==null)return;
var Y=ba[this.COLUMN_RULE_TYPE];

if(typeof Y.alarmTO!=x){var bb=Y.alarmTO;

if(bb!=null){return bb;
}}this.error("AlarmEventTable.js: Can't determine alarmTO");
return null;
},cellEventClicked:function(e){var bi=e.getRow();
var bh=e.getColumn();
var bc=this.getAlarmTO(bi);

if(bc==null)return;
if(bh==this.COLUMN_CONFIRM_BUTTON){if(this.lastrow!=bi){this.tableQX.getSelectionModel().setSelectionInterval(bi,bi);
this.confirmSelection();
this.lastrow=bi;
qx.event.Timer.once(function(e){this.lastrow=-1;
},this,200);
}}else if(bh==this.COLUMN_SHOWING_RULE_WINDOW||bh==this.COLUMN_RULE_NAME){var bf=bc.getDeviceId();

if(bf==null||bf==f)return;
var bg=this.trackGui.watchee.getDevice(bf);

if(bg==null)return;
var bd=this.trackGui.getWindowManager().popupRulesWindow(bg,bc.getRuleTypeEnum(),bc.getRuleName(),bc,false);

if(bd==null){this.trackGui.infoMsgBox(this.trc(k,r),10000);
}}else if(bh==this.COLUMN_SHOWING_ON_MAP){var bf=bc.getDeviceId();

if(bf==null||bf==f)return;
var bg=this.trackGui.watchee.getDevice(bf);

if(bg==null)return;
var be=bc.getGpsData();

if(be!=null&&bg!=null&&this.trackGui.watchee!=null){if(bg.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_GPS)){this.trackGui.watchee.getMapManager().showAndCenterLocationByDevice(bg,be);
return ;
}}this.trackGui.infoMsgBox(this.trc(k,F),10000);
}},resetData:function(){var bk=[[]];
this.info("resetData");

if(this.tableModel!=null){var bj=this.tableModel.getRowCount();
this.tableModel.removeRows(0,bj);
}},lookupAlarmById:function(bl){var bo=this.tableModel.getData();

for(var i=0,l=bo.length;i<l;i++){var bn=this.getAlarmTO(i);

if(bn!=null&&bn.getAlarmId()==bl){var bm={row:i,alarmTO:bn};
return bm;
}}return null;
},addAlarm:function(bp,bq){if(!this.hasPermission())return;
var bp=bp||null;
var bq=bq||false;

if(bp==null)return;
var bs=this.__tm(bp);
var br=this.lookupAlarmById(bp.getAlarmId());

if(br!=null){this.tableModel.removeRows(br.row,1);
}var bt=[];
bt.push(bs);
this.info("addAlarm: Pushing table rawData="+bt);
this.tableModel.addRows(bt);

if(bq){this.doDefaultSorting();
}},addAlarms:function(bu){if(!this.hasPermission())return;
var bu=bu||null;
this.resetData();

if(bu==null)return;
var bx=bu.getAlarms();
var bw=[];

for(var i=0,l=bx.length;i<l;i++){var bv=bx[i];

if(!bv.isAttachedToRule())continue;
var by=this.__tm(bv);
bw.push(by);
}this.tableModel.addRows(bw);
this.doDefaultSorting();
},confirmSelection:function(){if(!this.hasPermission())return;
var bC=[];
var bA=[];
var bB=this.getDevice().getCountAlarms();
var bz=this.getDevice().getCountAlarmsAttachedToRules();
this.tableQX.getSelectionModel().iterateSelection(function(bD){var bE=this.getAlarmTO(bD);

if(bE==null)return;
bC.push(bE);
bA.push(bD);
},this);

if(bC.length==0){return ;
}this.trackGui.confirmAlarms(this.alarmWindow.getBuddyTO().getLoginName(),bC);
bA.sort();

for(var i=bA.length-1;i>=0;i--)this.tableModel.removeRows(bA[i],1);
bB-=bA.length;
bz-=bA.length;
this.trackGui.watchee.getRuleManager().fireCountAlarms(this.getDevice().getDeviceId(),d+bB+D+bz);
},confirmAll:function(){if(!this.hasPermission())return;
var bG=null;
this.trackGui.confirmAlarms(this.alarmWindow.getBuddyTO().getLoginName(),bG);
this.resetData();
var bF=this.getDevice().getCountAlarms();
bF-=this.getDevice().getCountAlarmsAttachedToRules();
this.trackGui.watchee.getRuleManager().fireCountAlarms(this.getDevice().getDeviceId(),d+bF+G);
},__tm:function(bH){var bI=this.trackGui.veryBadHackToTriggerPNGLoadForAlarmTable(xbGetIcon(this.ICON_WIDTH+h));
var bJ=this.trackGui.veryBadHackToTriggerPNGLoadForAlarmTable(xbGetIcon(this.ICON_WIDTH+j));
var bM=this.trackGui.veryBadHackToTriggerPNGLoadForAlarmTable(this.getDevice().getShowingOnMapIcon(this.ICON_WIDTH));
var bK=new String(bH.getRuleTypeId());
bK.alarmTO=bH;
var bL=[bI,bJ,bM,bK,bH.getCreationTsNice(),bH.getRuleName(),bH.getNiceNameInfo()];
return bL;
},addTestData:function(){var bN=new track.rulesmodel.AlarmTO(this.trackGui);
bN.setRuleTypeEnum(net.watchee.RuleTypeEnum.GEOFENCE_LEAVE);
var bQ=this.trackGui.veryBadHackToTriggerPNGLoadForAlarmTable(xbGetIcon(this.ICON_WIDTH+h));
var bR=this.trackGui.veryBadHackToTriggerPNGLoadForAlarmTable(xbGetIcon(this.ICON_WIDTH+j));
var bP=this.trackGui.veryBadHackToTriggerPNGLoadForAlarmTable(this.getDevice().getShowingOnMapIcon(this.ICON_WIDTH));
var bS=[bQ,bR,bP,net.watchee.RuleTypeEnum.GEOFENCE_LEAVE.getId(),v,a,C];
var bO=[];
bO.push(bS);
this.info("testAlarm: Pushing table rawData="+bO);
this.tableModel.setData(bO);
},clear:function(){this.resetData();
}},destruct:function(){if(this.tableModel!=null){this.tableModel.dispose();
this.tableModel=null;
}}});
})();
(function(){var c="",b="qx.ui.table.headerrenderer.Icon",a="String";
qx.Class.define(b,{extend:qx.ui.table.headerrenderer.Default,construct:function(d,e){qx.ui.table.headerrenderer.Default.call(this);

if(d==null){d=c;
}this.setIconUrl(d);

if(e){this.setToolTip(e);
}},properties:{iconUrl:{check:a,init:c}},members:{updateHeaderCell:function(f,g){qx.ui.table.headerrenderer.Default.prototype.updateHeaderCell.call(this,f,g);
g.setIcon(this.getIconUrl());
}}});
})();
(function(){var b="qx.ui.table.cellrenderer.Image",a="";
qx.Class.define(b,{extend:qx.ui.table.cellrenderer.AbstractImage,construct:function(c,d){qx.ui.table.cellrenderer.AbstractImage.call(this);

if(c){this.__sS=c;
}
if(d){this.__sT=d;
}this.__sW=qx.util.AliasManager.getInstance();
},members:{__sW:null,__sT:16,__sS:16,_identifyImage:function(e){var f={imageWidth:this.__sS,imageHeight:this.__sT};

if(e.value==a){f.url=null;
}else{f.url=this.__sW.resolve(e.value);
}f.tooltip=e.tooltip;
return f;
}},destruct:function(){this.__sW=null;
}});
})();
(function(){var p="",o="ruleType",n="info",m="gpsData",l="ruleName",k="confirmLoginName",j="accountId",i=" (",h=")",g="deviceId",c="creationTs",f="modifiedTs",e="track.rulesmodel.AlarmTO",b="__",a="alarmId",d="Alarm";
qx.Class.define(e,{extend:qx.core.Object,construct:function(q,r){qx.core.Object.call(this);
this.trackGui=q;

if(org.xmlBlaster.util.isDefined(r)){this.propertyCollection=r;
}else{this.propertyCollection=new net.watchee.PropertyCollection(d);
}this.gpsDataCached=null;
this.eventSinkInfoMapCache=null;
},members:{isAttachedToRule:function(){var s=this.getRuleName();
return s.indexOf(b)!=0;
},getAlarmId:function(){return this.propertyCollection.getStr(a,p);
},getRuleName:function(){return this.propertyCollection.getStr(l,p);
},setRuleName:function(t){this.propertyCollection.addKeyValue(l,t);
},getNiceNameInfo:function(){var u=this.getRuleTypeEnum().getDescription();
if(this.getInfo()!=p){u+=i+this.getInfo()+h;
}return u;
},getRuleTypeId:function(){var v=this.propertyCollection.getStr(o,p);
return v;
},getRuleTypeEnum:function(w){var x=this.getRuleTypeId();
return net.watchee.RuleTypeEnum.lookup(x,w);
},isRuleTypeEnum:function(y){return this.getRuleTypeEnum().isSame(y);
},setRuleTypeEnum:function(z){if(z.constructor==net.watchee.RuleTypeEnum)this.propertyCollection.addKeyValue(o,z.getId());
else this.propertyCollection.addKeyValue(o,z);
},getInfo:function(){return this.propertyCollection.getStr(n,p);
},setInfo:function(A){if(A==null||A.length<1)this.propertyCollection.remove(n);
else this.propertyCollection.addKeyValue(n,A);
},getEventSinkInfo:function(){return this.propertyCollection.getStr(org.xmlBlaster.util.PropTO.KEY_EVENTSINK_INFOCSV,p);
},getEventSinkInfoMap:function(){if(this.eventSinkInfoMapCache==null){this.eventSinkInfoMapCache=org.xmlBlaster.util.Hashtable.parseCSV(this.getEventSinkInfo());
}return this.eventSinkInfoMapCache;
},getGpsDataStr:function(){return this.propertyCollection.getStr(m,null);
},setGpsDataStr:function(B){if(B==null||B.length<1)this.propertyCollection.remove(m);
else this.propertyCollection.addKeyValue(m,B);
},getGpsData:function(){if(this.gpsDataCached!=null)return this.gpsDataCached;
var C=this.getGpsDataStr();

if(C!=null&&C!=p)this.gpsDataCached=new net.watchee.GPSData(C,null);
return this.gpsDataCached;
},setGpsDataCached:function(D){this.gpsDataCached=D||null;
},getPropertyCollection:function(){return this.propertyCollection;
},getCreationTsNice:function(){var F=this.getCreationTs();
var E=org.xmlBlaster.util.getDateFromIsoDateStr(F);
return org.xmlBlaster.util.getCurrentIsoLocalTimestampStr(E,false,false,false);
},getCreationTs:function(){return this.propertyCollection.getStr(c,p);
},getModifiedTs:function(){return this.propertyCollection.getStr(f,p);
},getConfirmLoginName:function(){return this.propertyCollection.getStr(k,p);
},setConfirmLoginName:function(G){this.propertyCollection.addKeyValue(k,G);
},getDeviceId:function(){return this.propertyCollection.getStr(g,p);
},getAccountId:function(){return this.propertyCollection.getStr(j,p);
}},destruct:function(){}});
})();
(function(){var m="tableHeader",k=",countAlarmsAttachedToRules=",j="icon/16/apps/office-calendar.png",h="/alarm/alarmConfirm.png",g="middle",f="countAlarms=",d="Received at",c="Take care",b="#FF0000",a="No position found to display on map",F="Map",E="Triggered at",D="info box",C="Comment",B="No permission to see alarms of %1",A="/alarm/alarmShowRuleWindow.png",z="Confirm",y="groupbox title",x="",w="Date triggered",t="Event log of %1",u="Type",r="track.alarm.EventLog",s="tooltip",p="cellClick",q="2009-07-01",n="Date",o="2009-07-01 13:65:78",v="undefined";
qx.Class.define(r,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(G,H){qx.core.Object.call(this);
this.trackGui=G;
this.alarmWindow=H;
this.groupBox=null;
this.alarmEventTable=null;
this.tableQX=null;
this.tableModel=null;
this.lastrow=-1;
var I=0;
this.COLUMN_CONFIRM_BUTTON=I++;
this.COLUMN_SHOWING_ON_MAP=I++;
this.COLUMN_RULE_TYPE=I++;
this.COLUMN_DATE_TRIGGERED=I++;
this.COLUMN_DATE=I++;
this.COLUMN_INFO=I++;
this.NUM_COLUMN=I;
this.ICON_WIDTH_CELL=22;
this.ICON_WIDTH=16;
this.lastSortCol=this.COLUMN_DATE;
this.lastSortAsc=false;
this.columnWidth=[];
this.columnWidth[this.COLUMN_CONFIRM_BUTTON]=this.ICON_WIDTH_CELL;
this.columnWidth[this.COLUMN_SHOWING_ON_MAP]=this.ICON_WIDTH_CELL;
this.columnWidth[this.COLUMN_RULE_TYPE]=120;
this.columnWidth[this.COLUMN_DATE_TRIGGERED]=120;
this.columnWidth[this.COLUMN_DATE]=120;
this.columnWidth[this.COLUMN_INFO]=320;
this.RESPONSE_TIMEOUT_SEC=120;
},members:{getDevice:function(){return this.alarmWindow.getDevice();
},createGroup:function(J){this.groupBox=new qx.ui.groupbox.GroupBox(this.trc(y,t,this.getDevice().getNiceName()));
var K=new qx.ui.layout.VBox(0);
this.groupBox.setLayout(K);
this.groupBox.setContentPadding(J||12);
this.groupBox.add(this.__tl());
return this.groupBox;
},__tl:function(){this.tableModel=new qx.ui.table.model.Simple();
this.tableModel.setColumns([this.trc(m,z),this.trc(m,F),this.trc(m,u),this.trc(m,E),this.trc(m,d),this.trc(m,C)]);
this.tableModel.setColumnEditable(this.COLUMN_CONFIRM_BUTTON,true);
this.tableModel.setColumnSortable(this.COLUMN_CONFIRM_BUTTON,true);
var P=new qx.ui.table.Table(this.tableModel);
this.tableQX=P;
P.set({width:600,height:280,decorator:null});
var Q=2;
var M=8;
P.setRowHeight(this.ICON_WIDTH+Q);
P.setPadding(0);
P.setMargin(0);
P.setAlignY(g);
P.setForceLineHeight(true);
P.getSelectionModel().setSelectionMode(qx.ui.table.selection.Model.MULTIPLE_INTERVAL_SELECTION);
var O=P.getTableColumnModel();

for(var i=0,l=this.columnWidth.length;i<l;i++)O.setColumnWidth(i,this.columnWidth[i]+M);
O.setHeaderCellRenderer(this.COLUMN_DATE,new qx.ui.table.headerrenderer.Icon(j,n));
O.setHeaderCellRenderer(this.COLUMN_DATE_TRIGGERED,new qx.ui.table.headerrenderer.Icon(j,w));
var N=this.columnWidth[this.COLUMN_CONFIRM_BUTTON];
O.setDataCellRenderer(this.COLUMN_CONFIRM_BUTTON,new qx.ui.table.cellrenderer.Image());
this.ruleImageRenderer=new qx.ui.table.cellrenderer.Image();
O.setDataCellRenderer(this.COLUMN_SHOWING_ON_MAP,new qx.ui.table.cellrenderer.Image());
var L=O.getDataCellRenderer(this.COLUMN_RULE_TYPE);
O.setDataCellRenderer(this.COLUMN_INFO,new qx.ui.table.cellrenderer.String(g,b));
this.doDefaultSorting();
P.addListener(p,this.cellEventClicked,this);
this.enforcePermission();
return P;
},hasPermission:function(){var R=this.alarmWindow.getBuddyTO().hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_ALARM);
return R;
},enforcePermission:function(){var S=this.hasPermission();

if(S){this.tableQX.setToolTipText(null);
}else{this.resetData();
this.tableQX.setToolTipText(this.trc(s,B,this.alarmWindow.getBuddyTO().getLoginName()));
}},doDefaultSorting:function(T,U){var T=T||this.lastSortCol;

if(U===undefined)U=this.lastSortAsc;
this.tableModel.sortByColumn(T,U);
this.tableQX.updateAppearance();
},getAlarmTO:function(V){var X=this.tableModel.getRowData(V);
X=X||null;

if(X==null)return;
var W=X[this.COLUMN_RULE_TYPE];

if(typeof W.alarmTO!=v){var Y=W.alarmTO;

if(Y!=null){return Y;
}}this.error("AlarmEventTable.js: Can't determine alarmTO");
return null;
},cellEventClicked:function(e){var bf=e.getRow();
var be=e.getColumn();
var ba=this.getAlarmTO(bf);

if(ba==null)return;
if(be==this.COLUMN_CONFIRM_BUTTON){if(this.lastrow!=bf){this.tableQX.getSelectionModel().setSelectionInterval(bf,bf);
this.confirmSelection();
this.lastrow=bf;
qx.event.Timer.once(function(e){this.lastrow=-1;
},this,200);
}}else if(be==this.COLUMN_SHOWING_ON_MAP){var bc=ba.getDeviceId();

if(bc==null||bc==x)return;
var bd=this.trackGui.watchee.getDevice(bc);

if(bd==null)return;
var bb=ba.getGpsData();

if(bb!=null&&bd!=null&&this.trackGui.watchee!=null){if(bd.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_GPS)){this.trackGui.watchee.getMapManager().showAndCenterLocationByDevice(bd,bb);
return ;
}}this.trackGui.infoMsgBox(this.trc(D,a),10000);
}},resetData:function(){var bh=[[]];
this.info("resetData");

if(this.tableModel!=null){var bg=this.tableModel.getRowCount();
this.tableModel.removeRows(0,bg);
}},lookupAlarmById:function(bi){var bl=this.tableModel.getData();

for(var i=0,l=bl.length;i<l;i++){var bk=this.getAlarmTO(i);

if(bk!=null&&bk.getAlarmId()==bi){var bj={row:i,alarmTO:bk};
return bj;
}}return null;
},addAlarm:function(bm,bn){if(!this.hasPermission())return;
var bm=bm||null;
var bn=bn||false;

if(bm==null)return;
var bp=this.__tm(bm);
var bo=this.lookupAlarmById(bm.getAlarmId());

if(bo!=null){this.tableModel.removeRows(bo.row,1);
}var bq=[];
bq.push(bp);
this.info("addAlarm: Pushing table rawData="+bq);
this.tableModel.addRows(bq);

if(bn){this.doDefaultSorting();
}},addAlarms:function(br){if(!this.hasPermission())return;
var br=br||null;
this.resetData();

if(br==null)return;
var bu=br.getAlarms();
var bt=[];

for(var i=0,l=bu.length;i<l;i++){var bs=bu[i];

if(bs.isAttachedToRule())continue;
var bv=this.__tm(bs);
bt.push(bv);
}this.tableModel.addRows(bt);
this.doDefaultSorting();
},confirmSelection:function(){if(!this.hasPermission())return;
var bz=[];
var bx=[];
var by=this.getDevice().getCountAlarms();
var bw=this.getDevice().getCountAlarmsAttachedToRules();
this.tableQX.getSelectionModel().iterateSelection(function(bA){var bB=this.getAlarmTO(bA);

if(bB==null)return;
bz.push(bB);
bx.push(bA);
},this);

if(bz.length==0){return ;
}this.trackGui.confirmAlarms(this.alarmWindow.getBuddyTO().getLoginName(),bz);
bx.sort();

for(var i=bx.length-1;i>=0;i--)this.tableModel.removeRows(bx[i],1);
by-=bx.length;
this.trackGui.watchee.getRuleManager().fireCountAlarms(this.getDevice().getDeviceId(),f+by+k+bw);
},confirmAll:function(){if(!this.hasPermission())return;
var bD=null;
this.trackGui.confirmAlarms(this.alarmWindow.getBuddyTO().getLoginName(),bD);
this.resetData();
var bC=this.getDevice().getCountAlarmsAttachedToRules();
this.trackGui.watchee.getRuleManager().fireCountAlarms(this.getDevice().getDeviceId(),f+bC+k+bC);
},__tm:function(bE){var bJ=this.trackGui.veryBadHackToTriggerPNGLoadForAlarmTable(xbGetIcon(this.ICON_WIDTH+h));
var bK=this.trackGui.veryBadHackToTriggerPNGLoadForAlarmTable(xbGetIcon(this.ICON_WIDTH+A));
var bI=this.trackGui.veryBadHackToTriggerPNGLoadForAlarmTable(this.getDevice().getShowingOnMapIcon(this.ICON_WIDTH));
var bG=new String(bE.getRuleTypeId());
bG.alarmTO=bE;
var bH=bE.getGpsData();
var bF=(bH==null)?bE.getCreationTsNice():bH.getLocalTsIsoStr();
var bL=[bJ,bI,bG,bF,bE.getCreationTsNice(),bE.getNiceNameInfo()];
return bL;
},addTestData:function(){var bN=new track.rulesmodel.AlarmTO(this.trackGui);
bN.setRuleTypeEnum(net.watchee.RuleTypeEnum.GEOFENCE_LEAVE);
var bM=this.trackGui.veryBadHackToTriggerPNGLoadForAlarmTable(xbGetIcon(this.ICON_WIDTH+h));
var bP=this.trackGui.veryBadHackToTriggerPNGLoadForAlarmTable(this.getDevice().getShowingOnMapIcon(this.ICON_WIDTH));
var bO=[bM,bP,net.watchee.RuleTypeEnum.GEOFENCE_LEAVE.getId(),q,o,c];
var bQ=[];
bQ.push(bO);
this.info("testAlarm: Pushing table rawData="+bQ);
this.tableModel.setData(bQ);
},clear:function(){this.resetData();
}},destruct:function(){if(this.tableModel!=null){this.tableModel.dispose();
this.tableModel=null;
}}});
})();
(function(){var n="",m="label name",k="button",j="utcStr",h="execute",g="infoMsgBox",f="-",d="Start counting",c="remotePropertiesChanged",b="0",bk="sms",bj="activateTransportStockMode",bi="$WP+PSM=",bh="VsleepDelaySec",bg="alarmCountTab",bf="px sans-serif",be="green",bd="Change to transport/stock mode",bc="countAlarms",bb="activateCounterMode",u="16/actions/edit-undo.png",v="Power save mode configuration for %1 is not supported by device",s="Ssleep",t="changeValue",q=",startTs=",r="Rule type:",o="Fractional count:",p="Fraction:",y=",fraction=",z="VsleepModeNum",H="Started at:",F="showSleepModeInIcon",P=",2,300,1,0,3,32400",K="assert: sendTransportStockModeActivationToTracker with directHackWithoutFeedback==false is not implemented",W="Sending power save mode configuration for %1",U="endTs",B="dummy",ba="dummySendRemove-",Y="Reset",X="Sending power save mode configuration for %1.<br/><b>Note: The buddy is offline</b>",A="startTs",D="16/actions/system-log-out.png",E="Event count:",G="fraction",I="latestTimestamp",L="ruleTypeId",R="$OK:",V=",1,6,1,2,2,10000",w="Stop counting",x="16/actions/object-rotate-right.png",C="dummySend-",O="VsleepDurationSec",N="track.alarm.AlarmCounterTab",M=",endTs=",T="Ended at:",S="16/actions/media-playback-pause.png",J="groupbox title",Q="ruleTypeId=",a="Counter for %1";
qx.Class.define(N,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(bl,bm){qx.core.Object.call(this);
this.trackGui=bl;
this.alarmWindow=bm;
this.__tn=null;
this.__to=null;
this.__tp=null;
this.__tq=null;
this.__tr=false;
this.__ts=0;
this.__tt=null;
this.DEFAULT_FRACTION=1;
this.__tu=null;
this.__tv=null;
this.__tw=null;
this.__tx=null;
this.directHackWithoutFeedback=true;
this.__ty=false;
this.KEY_ALARM_COUNTER_PREFIX="alarmCounter/";
},members:{getDevice:function(){return this.alarmWindow.getDevice();
},createGroup:function(bn){this.groupBox=new qx.ui.groupbox.GroupBox(this.trc(J,a,this.getDevice().getNiceName()));
var bz=new qx.ui.layout.Grid(10,2);
this.groupBox.setLayout(bz);
var bs=300;
var bx=200;
var bB=60;
var bv=bB+10;
var bo=3*bB;
var bq=new qx.ui.basic.Label(this.trc(m,r));
var bt=new qx.ui.basic.Label(this.trc(m,p));
var bE=new qx.ui.basic.Label(this.trc(m,H));
var bw=new qx.ui.basic.Label(this.trc(m,T));
var bA=new qx.ui.basic.Label(this.trc(m,E));
var bC=new qx.ui.basic.Label(this.trc(m,o));
var br=0;
var bu=0;
this.groupBox.add(bq,{row:br++,column:bu});
this.groupBox.add(bt,{row:br++,column:bu});
this.groupBox.add(bE,{row:br++,column:bu});
this.groupBox.add(bw,{row:br++,column:bu});
this.groupBox.add(bA,{row:br++,column:bu});
this.groupBox.add(bC,{row:br++,column:bu});
this.__tv=new qx.ui.form.Button(this.trc(k,Y),xbGetQxIcon(u));
this.groupBox.add(this.__tv,{row:br++,column:bu});
this.__tn=new qx.ui.form.SelectBox();
this.__tn.setWidth(bs);
this.__tn.add(new qx.ui.form.ListItem(net.watchee.RuleTypeEnum.ENTER_AWAKE.description,null,net.watchee.RuleTypeEnum.ENTER_AWAKE));
this.__to=new qx.ui.form.Spinner(1,this.DEFAULT_FRACTION,10);
this.__to.setMaxWidth(80);
this.__tp=new qx.ui.form.TextField();
this.__tp.setMaxWidth(200);
this.__tp.setEnabled(false);
this.__tq=new qx.ui.form.TextField();
this.__tq.setMaxWidth(200);
this.__tq.setEnabled(false);
this.__tt=new qx.ui.form.TextField().set({readOnly:true,font:qx.bom.Font.fromString(bB+bf),padding:3,width:bo,minWidth:bo,maxWidth:bo,textColor:be});
this.__tu=new qx.ui.form.TextField().set({readOnly:true,font:qx.bom.Font.fromString(bB+bf),padding:3,width:bo,minWidth:bo,maxWidth:bo,textColor:be});
this.__tz=xbGetQxIcon(x);
this.__tA=xbGetQxIcon(S);
this.__tw=new qx.ui.form.Button(this.trc(k,d),this.__tz);
this.__tx=new qx.ui.form.Button(this.trc(k,bd),xbGetQxIcon(D));
var br=0;
var bD=1;
this.groupBox.add(this.__tn,{row:br++,column:bD});
this.groupBox.add(this.__to,{row:br++,column:bD});
this.groupBox.add(this.__tp,{row:br++,column:bD});
this.groupBox.add(this.__tq,{row:br++,column:bD});
bz.setRowHeight(br,bB+20);
this.groupBox.add(this.__tt,{row:br++,column:bD});
this.groupBox.add(this.__tu,{row:br++,column:bD});
this.groupBox.add(this.__tw,{row:br++,column:bD});
this.groupBox.add(this.__tx,{row:br++,column:bD});
this.__tv.addListener(h,function(e){this.onReset(true);
},this);
this.__tw.addListener(h,function(e){this.onStartStop();
},this);
this.__tx.addListener(h,function(e){this.onChangeToTransportMode();
},this);
this.__tx.setEnabled(!this.isTransportMode());
this.__to.addListener(t,function(e){this.refreshResult();
},this);
var by=this.getAccountPropertyKey();
var bp=this.alarmWindow.getBuddyTO().getAccountPropertyStr(by,null);
this.onAccountPropertyKeyValue(by,bp);
this.remotePropertiesChangedListenerFunc=this.getDevice().getEventManager().addListener(c,function(bF){var bG=bF.getData().propertyCollection;
this.onRemoteProperiesChanged(bG);
},this);
this.queryRemoteProperties(false);
return this.groupBox;
},queryRemoteProperties:function(bH){if(bH||this.getDevice().hasPropertyCollectionCompleteCached()==false){this.trackGui.sendGetDeviceConfiguration(this.getDevice().getLoginName());
}else{}},onRemoteProperiesChanged:function(bI){var bJ=bI.contains(bh)||bI.isAll();

if(!bJ)return;
var bK=bI.getBoolean(s,false);
this.info("AlarmCounterTab: Remote properties changed: tracker has sleep mode configured = "+bK);
this.__tx.setEnabled(!this.isTransportMode());
this.updateDevicesTableOnlineIcon();
},setButtonLabels:function(){if(this.__tr){this.__tw.setLabel(this.trc(k,w));
this.__tw.setIcon(this.__tA);
}else{this.__tw.setLabel(this.trc(k,d));
this.__tw.setIcon(this.__tz);
}},hasPermission:function(){var bL=this.alarmWindow.getBuddyTO().hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_ALARM);
return bL;
},enforcePermission:function(){var bM=this.hasPermission();

if(bM){;
}else{}},onReset:function(bN){this.__tr=false;
this.__ts=0;
this.setTsTextField(this.__tp,null);
this.setTsTextField(this.__tq,null);
this.__tt.setValue(b);
this.__tu.setValue(b);
this.__tw.setEnabled(true);
this.setButtonLabels();
this.__tx.setEnabled(!this.isTransportMode());

if(bN){this.removeAccountProperty();
}},isTransportMode:function(){var bO=this.getDevice().getConfiguredPowerSaveMode();
this.info("psmMode="+bO);

if(bO==2)return true;
return false;
},onChangeToTransportMode:function(){this.sendTransportStockModeActivationToTracker();
},onStartStop:function(){var bR=this.__tr;
this.__tr=!this.__tr;

if(this.__tr){if(this.getSelectedRuleTypeEnum().isSame(net.watchee.RuleTypeEnum.ENTER_AWAKE)){this.sendEnterAwakeRuleTypeActivationToTracker();
}var bP=false;
var bQ=true;
var bS=org.xmlBlaster.util.getCurrentIsoGmtTimestampStr(null,bP,bQ);
this.setTsTextField(this.__tp,bS);
this.setTsTextField(this.__tq,null);
this.__tv.setEnabled(false);
this.__tx.setEnabled(false);
}else{if(this.getSelectedRuleTypeEnum().isSame(net.watchee.RuleTypeEnum.ENTER_AWAKE)){}var bP=false;
var bQ=true;
var bT=org.xmlBlaster.util.getCurrentIsoGmtTimestampStr(null,bP,bQ);
this.setTsTextField(this.__tq,bT);
this.__tv.setEnabled(true);
this.__tw.setEnabled(false);
this.__tx.setEnabled(true);
}this.setButtonLabels();
this.saveAccountProperty();
},getSelectedRuleTypeEnum:function(){var bU=this.__tn.getModelSelection().getItem(0);

if(bU==null){return net.watchee.RuleTypeEnum.ENTER_AWAKE;
}return bU;
},getSelectedRuleTypeId:function(){return this.getSelectedRuleTypeEnum().getId();
},setTsTextField:function(bV,bW){if(bW==null){bV.setUserData(j,null);
bV.setValue(n);
}else{bV.setUserData(j,bW);
var bX=false;
var bY=false;
var ca=org.xmlBlaster.util.getCurrentIsoLocalTimestampStrFromUtcStr(bW,bX,bY);
bV.setValue(ca);
}},getStartTsUTC:function(){var cb=this.__tp.getUserData(j);
return cb;
},getEndTsUTC:function(){var cc=this.__tq.getUserData(j);
return cc;
},onAccountPropertyKeyValue:function(cd,ce){if(!this.hasPermission())return;
var ch=this.getAccountPropertyKey();

if(cd!=ch){return;
}var ci=org.xmlBlaster.util.Hashtable.parseCSV(ce);
var cf=ci.get(L,this.getSelectedRuleTypeId());
var cj=ci.getNumber(G,this.DEFAULT_FRACTION);
var cg=ci.get(A,null);
var ck=ci.get(U,null);
this.__to.setValue(cj);
this.__tt.setValue(n+0);
this.__tu.setValue(n+0);
if(cg!=null){this.setTsTextField(this.__tp,cg);
}
if(ck!=null){this.setTsTextField(this.__tq,ck);
}
if(cg!=null&&ck==null){this.__tr=true;
this.__tv.setEnabled(false);
this.__tw.setEnabled(true);
this.__tx.setEnabled(!this.isTransportMode());
this.setButtonLabels();
}this.sendGetCountAlarmsOfRuleType(cg);
},sendGetCountAlarmsOfRuleType:function(cl,cm){var cn=this.alarmWindow.getBuddyTO().getLoginName();
this.trackGui.watchee.getRuleManager().getCountAlarmsOfTypeSince(cn,function(co){if(co.errorStr!=null){this.error(co.errorStr);
return;
}var cr=co.hash;
var cq=cr.get(bc);
var cp=cr.get(I);
this.__ts=cq;
this.refreshResult();
},this,B,cl,cm,this.getSelectedRuleTypeId());
},sendEnterAwakeRuleTypeActivationToTracker:function(){if(this.directHackWithoutFeedback){var cE=this.alarmWindow.getBuddyTO().getLoginName();
var cu=cE;
var cH=bg+f+this.trackGui.getRequestResponseDispatcher().getRequestIdNextVal();
var cx=this.getDevice().getHwPasswd();
var cD=bi+cx+V;
var cG=bk;
var cz=false;
var cv=true;
var cw=bb;
this.trackGui.getRequestResponseDispatcher().registerRequest(cH,120,function(cI,cJ,cK){this._receivedBlackboxResponse(cu,cI,cJ,cK,false);
},this,cw,cv);
this.info("Sending command '"+cD+"'");
this.trackGui.sendRawDeviceCommand(cE,cH,cD,cG,cz);
}else{var cu=this.alarmWindow.getBuddyTO().getLoginName();

if(!this.getDevice().getDeviceInfo().supportsSleepingMode()){this.trackGui.infoMsgBox(this.trc(g,v,cu));
return;
}
if(this.trackGui.watchee==null)return;
var cy=new net.watchee.PropertyCollection();
var cF=net.watchee.RuleTypeEnum.ENTER_SLEEPMODE.toSetActionString();
var cB=new net.watchee.PropertyPair(net.watchee.PC_ACTION,cF);
cB.setDurable(true);
cy.add(cB);
var cs=new net.watchee.PropertyPair(bh,6);
cs.setDurable(true);
cy.add(cs);
var cC=new net.watchee.PropertyPair(z,1);
cC.setDurable(true);
cy.add(cC);
var ct=new net.watchee.PropertyPair(O,10000);
ct.setDurable(true);
cy.add(ct);
this.trackGui.sendDeviceSettings(cu,cy);
var cA=this.alarmWindow.getBuddyTO().hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_CFG);

if(this.alarmWindow.getBuddyTO().isOnline()||!cA){this.trackGui.infoMsgBox(this.trc(g,W,cu),3000);
}else{this.trackGui.infoMsgBox(this.trc(g,X,cu),3000);
}}},sendTransportStockModeActivationToTracker:function(){if(this.directHackWithoutFeedback){var cR=this.alarmWindow.getBuddyTO().getLoginName();
var cL=cR;
var cT=bg+f+this.trackGui.getRequestResponseDispatcher().getRequestIdNextVal();
var cO=this.getDevice().getHwPasswd();
var cQ=bi+cO+P;
var cS=bk;
var cP=false;
var cM=true;
var cN=bj;
this.trackGui.getRequestResponseDispatcher().registerRequest(cT,120,function(cU,cV,cW){this._receivedBlackboxResponse(cL,cU,cV,cW,false);
},this,cN,cM);
this.info("Sending command '"+cQ+"'");
this.trackGui.sendRawDeviceCommand(cR,cT,cQ,cS,cP);
}else{this.trackGui.errorMsgBox(K);
}},_receivedBlackboxResponse:function(cX,cY,da,db,dc){this.trackGui.receivedBlackboxResponse(cX,cY,da,db,dc);
this.queryRemoteProperties(true);
var dd=cY.getResult();

if(da==bj&&dd.indexOf(R)==0){this.onReset(true);
}},updateDevicesTableOnlineIcon:function(){var de=xbProperties.getBoolean(F,false);

if(de){var df=this.trackGui.getDevicesTableController();

if(df!=null){df.devicesTable.updateDeviceStateAutoRefresh(this.getDevice().getDeviceId(),df.devicesTable.COLUMN_ONLINE_STATUS);
}}},onAddAlarm:function(dg){if(!this.hasPermission())return;
var dg=dg||null;

if(dg==null)return;

if(!dg.isRuleTypeEnum(this.getSelectedRuleTypeEnum())){return;
}
if(this.__tr){this.__ts++;
}this.refreshResult();
},onAddAlarms:function(dh){var di=true;

if(di){return;
}
if(this.__ty)return ;
this.__ty=true;
this.addAlarms(dh);
},addAlarms:function(dj){if(!this.hasPermission())return;
var dj=dj||null;

if(dj==null)return;
this.__ts=0;
var dq=dj.getAlarms();

for(var i=0,l=dq.length;i<l;i++){var dk=dq[i];

if(!dk.isRuleTypeEnum(this.getSelectedRuleTypeEnum())){continue;
}
if(this.__tr){var dp=dk.getGpsData();

if(dp==null)continue;
var dm=dp.getUtcIsoStr();
var dn=this.getStartTsUTC();
var dl=this.getEndTsUTC();

if(dm>=dn&&(dl==null||dm<=dl)){this.__ts++;
}}}this.refreshResult();
},refreshResult:function(){this.__tt.setValue(n+this.__ts);
var ds=this.__to.getValue();
var dr=this.__ts/ds;
dr=Math.floor(dr);
this.__tu.setValue(n+dr);
},getAccountPropertyKey:function(){var dt=this.KEY_ALARM_COUNTER_PREFIX+this.getSelectedRuleTypeId();
return dt;
},removeAccountProperty:function(){if(!this.hasPermission()){return;
}var dv=this.getAccountPropertyKey();
var du=n;
this.trackGui.sendChangeAccountProperty(this.alarmWindow.getBuddyTO().getLoginName(),dv,du,function(){var dw=this.alarmWindow.getBuddyTO();
dw.getAccountPropertyCollection().remove(dv);
},this,ba+dv);
},saveAccountProperty:function(){if(!this.hasPermission()){return;
}var dA=this.getAccountPropertyKey();
var dx=Q+this.getSelectedRuleTypeId();
var dz=this.__to.getValue();
dx+=y+dz;
var dy=this.getStartTsUTC();

if(dy!=null&&dy.length>0){dx+=q+dy;
}var dB=this.getEndTsUTC();

if(dB!=null&&dB.length>0){dx+=M+dB;
}this.trackGui.sendChangeAccountProperty(this.alarmWindow.getBuddyTO().getLoginName(),dA,dx,function(){var dC=this.alarmWindow.getBuddyTO();
dC.addAccountPropertyKeyValue(dA,dx);
},this,C+dA);
},clear:function(){this.onReset(false);
}},destruct:function(){if(this.remotePropertiesChangedListenerFunc!=null){if(this.trackGui.watchee!=null&&this.getDevice()!=null)this.getDevice().getEventManager().removeListener(c,this.remotePropertiesChangedListenerFunc);
this.remotePropertiesChangedListenerFunc=null;
}}});
})();
(function(){var n="22/testSend.png",m="tooltip",l="button",k="execute",j="Confirm All",i="Manage Alarms",h="track.alarm.AlarmManageGroup",g="No permission to confirm alarms for %1",f="Confirm that you are aware of this alarm of %1",d="groupbox title",a="left",c="middle",b="Confirm Selected";
qx.Class.define(h,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(o,p,q){qx.core.Object.call(this);
this.trackGui=o;
this.alarmWindow=p;
this.groupBox=null;
this.confirmButton=null;
this.deleteAllButton=null;
this.tableHandle=q;
},members:{createGroup:function(r){var w=new qx.ui.groupbox.GroupBox(this.trc(d,i));
this.groupBox=w;
var s=new qx.ui.layout.Grid(6,2);
w.setLayout(s);
w.setContentPadding(r||12);
var x=0;
var u=0;
var v=1;
var t=2;
s.setColumnAlign(0,a,c);
this.confirmButton=new qx.ui.form.Button(this.trc(l,b),xbGetIcon(n));
this.confirmButton.setEnabled(true);
w.add(this.confirmButton,{row:x,column:u});
this.confirmButton.addListener(k,function(e){if(this.trackGui.watchee==null)return;
this.confirmButton.setEnabled(false);
qx.event.Timer.once(function(e){this.confirmButton.setEnabled(this.hasPermission());
},this,2000);
this.tableHandle.confirmSelection();
},this);
this.deleteAllButton=new qx.ui.form.Button(this.trc(l,j),xbGetIcon(n));
this.deleteAllButton.setEnabled(true);
w.add(this.deleteAllButton,{row:x,column:t});
this.deleteAllButton.addListener(k,function(e){if(this.trackGui.watchee==null)return;
this.deleteAllButton.setEnabled(false);
qx.event.Timer.once(function(e){this.deleteAllButton.setEnabled(this.hasPermission());
},this,2000);
this.tableHandle.confirmAll();
},this);
this.enforcePermission();
return w;
},hasPermission:function(){var y=this.alarmWindow.getBuddyTO().hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_ALARM);
return y;
},enforcePermission:function(){var z=this.hasPermission();
this.confirmButton.setEnabled(z);

if(z){this.confirmButton.setToolTipText(this.trc(m,f,this.alarmWindow.getBuddyTO().getLoginName()));
}else{this.confirmButton.setToolTipText(this.trc(m,g,this.alarmWindow.getBuddyTO().getLoginName()));
}},clear:function(){}},destruct:function(){}});
})();
(function(){var m="ruleTypeEnum",k="infoMsgBox",j="alarmAutoConfirm",h="tooltip",g="changeValue",f="16/actions/dialog-ok.png",d="button",c="execute",b="No permission to change configuration of %1",a="Save the changes made for %1",C="16/actions/dialog-cancel.png",B="changeSelection",A="middle",z=": ",y="22/testSend.png",x="track.alarm.AutoConfirmGroup",w="AutoConfirmGroup.js createGroup failed",v="Timeout, no response after %1 sec",u="Automatic Confirmations",t="Automatically confirm new ones",r="label",s="Save all changes",p="<b><font color='green'>Configuration is saved</font></b>",q="No permission to configure alarms of %1",n="groupbox title",o=",";
qx.Class.define(x,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(D,E){qx.core.Object.call(this);
this.trackGui=D;
this.alarmWindow=E;
this.groupBox=null;
this.programmaticSetSelected=false;
this.ruleTypesSelectBox=null;
this.confirmButton=null;
this.alarmAutoConfirmHashtable=new org.xmlBlaster.util.Hashtable();
this.okIcon=xbGetQxIcon(f);
this.noIcon=xbGetQxIcon(C);
},members:{createGroup:function(F){try{var H=new qx.ui.groupbox.GroupBox(this.trc(n,u));
H.setContentPadding(F);
this.groupBox=H;
var G=new qx.ui.layout.HBox().set({spacing:10,alignY:A});
H.setLayout(G);
this.ruleTypesSelectBox=new qx.ui.form.SelectBox();
this.ruleTypesSelectBox.setWidth(260);
H.add(this.ruleTypesSelectBox);
this.ruleTypesSelectBox.addListener(B,function(e){if(this.programmaticSetSelected)return ;
var I=(e.getData().length==0)?null:e.getData()[0];
this.__oJ(I);
},this);
this.checkBox=new qx.ui.form.CheckBox(this.trc(r,t));
this.checkBox.setValue(true);
this.checkBox.addListener(g,function(e){if(this.programmaticSetSelected)return ;
var K=this.ruleTypesSelectBox.getSelection()[0];
var J=e.getData();
this.__tD(K,J);
},this);
H.add(this.checkBox);
this.confirmButton=new qx.ui.form.Button(this.trc(d,s),xbGetIcon(y));
this.confirmButton.setEnabled(true);
H.add(this.confirmButton);
this.confirmButton.addListener(c,function(e){if(this.trackGui.watchee==null)return;
this.confirmButton.setEnabled(false);
qx.event.Timer.once(function(e){this.confirmButton.setEnabled(this.hasPermission());
},this,2000);
this.__tF();
},this);
this.populateRules();
this.enforcePermission();
return H;
}catch(L){this.trackGui.errorMsgBoxDeveloper(w,L);
return null;
}},hasPermission:function(){var M=this.alarmWindow.getBuddyTO().hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_CFG);
return M;
},enforcePermission:function(){var N=this.hasPermission();
this.confirmButton.setEnabled(N);
this.checkBox.setEnabled(N);

if(N){this.confirmButton.setToolTipText(this.trc(h,a,this.alarmWindow.getBuddyTO().getLoginName()));
}else{this.confirmButton.setToolTipText(this.trc(h,b,this.alarmWindow.getBuddyTO().getLoginName()));
}},populateRules:function(){if(this.ruleTypesSelectBox==null)return;
this.programmaticSetSelected=true;
this.alarmAutoConfirmHashtable=this.alarmWindow.getBuddyTO().getAccountPropertyHashtable(j,null);
this.ruleTypesSelectBox.removeAll();

for(var i=0,l=net.watchee.RuleTypeEnums.length;i<l;i++){var O=net.watchee.RuleTypeEnums[i];

if(O.isSame(net.watchee.RuleTypeEnum.GEOFENCE))continue;
var Q=this.alarmAutoConfirmHashtable.contains(O.getId())?this.okIcon:this.noIcon;
var P=new qx.ui.form.ListItem(O.getId(),Q,O.getId());
P.setToolTipText(O.getId()+z+O.getDescription());
P.setUserData(m,O);
this.ruleTypesSelectBox.add(P);
}this.__tB();
this.ruleTypesSelectBox.updateAppearance();
this.programmaticSetSelected=false;
},__tB:function(){var R=track.util.GuiUtils.getSelectedUserData(this.ruleTypesSelectBox,m);
var S=this.alarmAutoConfirmHashtable.contains(R.getId());
this.checkBox.setValue(S);
},__tC:function(T){if(this.ruleTypesSelectBox==null)return;
var U=this.ruleTypesSelectBox.getChildren();

for(var i=0,l=U.length;i<l;i++){if(T!=U[i])return U[i];
}},__tD:function(V,W){if(V==null)return false;
var X=W?this.okIcon:this.noIcon;
V.setIcon(X);
},__tE:function(Y){if(Y==null)return false;
var ba=(Y.getIcon()==this.okIcon);
return ba;
},__oJ:function(bb){if(bb==null)return ;
var bc=bb.getUserData(m);
var bd=this.__tE(bb);
this.checkBox.setValue(bd);
},__tF:function(){if(this.trackGui.watchee==null)return;

if(this.ruleTypesSelectBox==null)return;

if(!this.hasPermission()){this.trackGui.infoMsgBox(this.trc(k,q,this.alarmWindow.getBuddyTO().getLoginName()));
return;
}var bl=[];
var bf=this.ruleTypesSelectBox.getChildren();

for(var i=0,l=bf.length;i<l;i++){var bi=bf[i];

if(this.__tE(bi)){var bk=bi.getUserData(m);
bl.push(bk.getId());
}}var be=this.alarmWindow.getBuddyTO().getLoginName();
var bj=j;
var bg=org.xmlBlaster.util.arrayToCsv(bl,o);
var bh=bg;
this.trackGui.sendChangeAccountProperty(be,bj,bg,this.responseOrExceptionOrTimeoutReceived,this,bh);
},responseOrExceptionOrTimeoutReceived:function(bm,bn,bo){this.info("AutoConfirmGroup.js Received response: "+bm);
var br=bn;
var bq=org.xmlBlaster.util.PropTO;
var bp=null;

if(bm==null){bp=this.trc(k,v,bo.timeoutSec);
}else if(bm.isException()){bp=bm.getErrorHtmlMessage();
}else{bp=this.trc(k,p);
}this.trackGui.infoMsgBox(bp);
},clear:function(){}},destruct:function(){}});
})();
(function(){var b="Alarm",a="track.rulesmodel.AlarmsTO";
qx.Class.define(a,{extend:qx.core.Object,construct:function(c,d){qx.core.Object.call(this);
this.trackGui=c;

if(org.xmlBlaster.util.isDefined(d)){this.propertyCollections=d;
this.alarmTOArray=this.__pH(this.propertyCollections);
}else{this.propertyCollections=new net.watchee.PropertyCollections();
this.alarmTOArray=[];
}},members:{__pH:function(e){var f=[];
var j=null;
var g=e.getPropertyCollections();

for(var i=0,l=g.length;i<l;i++){var h=g[i];

if(b==h.getClazz()){j=new track.rulesmodel.AlarmTO(this.trackGui,h);
f.push(j);
}else{this.error("AlarmsTO.js: Unexpected clazz in Alarm PCC: "+e.toXml());
}}return f;
},getAlarms:function(){return this.alarmTOArray;
}},destruct:function(){this._disposeFields();
this._disposeObjects();
}});
})();
(function(){var ec="setSetting",eb="doAction",ea="bool",dY="1",dX="int",dW="",dV="password",dU="action",dT="type",dS="checkbox",cu="_action",ct="removeInputControl",cs='Send',cr="240000",cq="Display a Message Box",cp='type',co="html",cn='options',cm="phonenumber",cl="infoMsgBox",ej="options",ek="0",eh="loginAccountToGot",ei="showMsg",ef="useBluetoothApi",eg="trackingRate:old",ed="<b><font color='#FF0000'>Unexpected</font></b> ",ee="minimizeOnStartup",el='validationFunc',em="smsRegister",dt="Milliseconds to wait for ping response",ds="Defaults to 100, for C702 try 86 percent",dw="sms=true",du="Tracking to server switch on/off",dy="default,small,medium,big",dx="BlackBerry:encoding=video/3gpp  k610i:encoding=jpeg&width=160&height=120 others: null",dA="addInputControl",dz="sendSMS=1,phoneNumber=+491754616132,port=50412,show=true,sms=Hello World",dq='Info',dp="validationFunc",n="photoSize",o="188.40.16.133",p="regExp",q="Sgprs",r="mapRadius",s="setDisplay",t="gpsConnectOnStartup",u="locationApiIntervalSec",v="Vibration feedback to user",w="sendSMS",eB="supportPhone",eA="setInputValue",ez="takeConnectionQueue",ey="Destroy first number of outgoing messages",eF="User interaction if SMS arrives",eE="Trigger a phone call",eD="Adjust logging level",eC="serverConnectOnStartup",eH="trackingOnStartup",eG="Qst=t",br="exitMidlet",bs="cbPingInterval",bp="registerLaunchMidlet",bq="External GPS chip",bv='resp',bw="pingInterval",bt="Send the mobile phone logging to server (publish to topic device.xxxxxx.cfg)",bu="=",bn="0.8",bo="Internal GPS chip",S="100",R="trackingRate:",U="Str",T="trackingRate:V",O='DblCick',N="autostart",Q='regExp',P="publishNMEA",M='[0-9]+',L="clearConnectionQueue",bC='Use only numbers!',bD="hostname",bE="captureAudio=1,captureAudioSec=5,interactive=false",bF="60000",by="float",bz="pingResponseTimeout",bA="string",bB="Internal GPS chip query interval, 1sec for Phones, 8sec for BlackBerry",bG="300",bH="useGpsSerialApi",bg="Telephone number customer support",bf="latlonDisplay",be="Record sound",bd="containerId=POI,id=waggonnr,value=70",bc="123456",bb="trackingRate:S",ba="Strv=0,Strt=1,Strc=1,Strd=-1,Strs=0",Y="GPRS switch on/off",bk="Auto Tracking on MIDLet startup",bj="dataChanged",bI="Remove all GUI lines",bJ="getLog",bK="avoidScreenSaver",bL="containerId=POI,id=*",bM="Register to SMS on given SMS-Port",bN="listIconSizeX",bO="Publish position data (usually received from SMS)",bP="Automatically start application on phone boot (Sony Ericsson only, else use 'registerLaunchMidlet')",bQ='password',bR="compress",cC="</font></b> ",cB="photo=1,photoSize=medium,interactive=false,delaySec=5",cA="120, 30, 80, 240, 4, 30, 2000, 4",cz="combobox",cG="3412",cF="GPS switch on/off",cE="Window-title",cD="<b><font color='green'>Success</font></b> ",cK="encoding=jpeg&width=240&height=320 BlackBerry:encoding=jpeg&width=480&height=360&quality=normal",cJ="Add an new GUI line, choose row>100 and <1000",dj="Server Port: 3412(gpsvision/watchee compressed); 3411 uncompressed",dk="zlib:stream",dh="Defaults to 40",di="showTakePhoto",df="captureAudio",dg=" ",dd="40",de="makePhoneCall",dl=" sec",dm="screenHeightPercent",dF="Command is sent to %1 over SMS<br />The response will take about one minute, please wait<br /><br /><i>%2</i>",dE="Qst",dH="clearConnectionQueue=1,interactive=false",dG="Size of Icons [pixel]",dJ="photo",dI=")",dL="maxLogEntries",dK="Server IP, 188.40.16.133=gpsvisionFailover, 88.198.105.108=watchee, 46.4.72.101=netwake, forstw-test=194.120.23.2",dC="How many positions to tail back on phone if GPRS is lost",dB="publishNMEA=1,nmea=$GPRMC,120333.931,A,4745.7901,N,00911.0797,E,000.0,324.1,220608,,,A*62",et="minimize,overview,mainMenu,configureMenu,settings,info,buddies,buddiesSelect,xsms,xsmsInbox,xsmsOutbox",eu="'zlib:stream': Using compressed tcp/ip",ew="degminsec,decimal",ex="Set track name, if not a date it is not switched on midnight",ep="Remove a GUI line",eq="sms",er="showMsg=1,popup=1,html=1,vibration=1,msgbox.title=<b>From Server</b>,msgbox.message=Hello World,msgbox.type=INFO,msgbox.sec=3",es="sendIntervalAtMinSpeed,sendIntervalAtMaxSpeed,speedForMaxInterval(0==off),sendIntervalHeartBeat(0==off),minSpeedForHeadingChangeThreshold,headingChangeThreshold(0==off)[,distanceMeter(0==off)|TimerStartCmd,TimerStopCmd]",en="takeConnectionQueue=1,numMessages=1,interactive=false",eo="incrementalResponse=true",m="INFO,DEBUG,NONE,ERROR,WARN",k="Tracking settings: Speed,Heartbeat,Course,Distance,StopAndGo,TimerStartCmd,TimerStopCmd",j="Milliseconds to for server to wait for update ACK",h="Display button to capture audo clips",g="Clear outgoing messages",f="track.admin.TestDeviceWindow",d="Format of Lat/Lon displayed",c="Milliseconds to ping mobile phone",b="editable",a="required",B=" (",C="50412",z="updateResponseTimeout",A='Response/Exception',F="updateMidlet",G="Take a photo",D="Auto GPRS connect",E="Feed GPS to OpenCellid.org",I="clearAll",J="Register in push registry to start midlet again in given seconds (see also 'autostart' for Sony Ericsson devices)",cO="useLocationApi",cI="port",cV="SMS-Port",cR="vibrate",cx="containerId=POI,id=waggonnr,singleLine=true,row=110,label=WaggonNr,labelFontAttr=STYLE_BOLD,labelIconUrl=leYes,labelSelectable=false,labelWidth=-60,value=0,type=int,maxLen=12,valueBorder=1,autoMove=true",cv="Change server password",W="26",cy="Milliseconds to ping server (0=off)",bi="---",bh='Query track',cc="Change value of a GUI line",cd=",bounce=",ce='Infotext',cf="queued=true",cg="Query current position (Query Sentencetype Track)",ch="Display button to take photos",ci="Send a SMS",cj="smsAsk",bY="containerId=POI,id=waggonnr",ca="showCaptureAudio",cw="Tracking activation: Speed,Heartbeat,Course,Distance,StopAndGo; 0=off,-1=undef,1=on",cU='Qst=t',cT="Sgps",cS="Raw configure device %1",da="createVideoPlayerPostfix",cY="600000",cX="<b><font color='red'>Timeout</font></b>, no response after ",cW='Doubleclick on cell to edit value',cQ="registerLaunchMidlet=1,secondsFromNow=30",cP="Command is sent to %1<br /><br /><i>%2</i>",H="Defaults to 50412, FwMobile to 50414",bm="Minimize MIDlet or load menu",bl="<b><font color='brown'>SMS send</font></b> ",cH="updateMidlet=1,ask=false,url=http://gpsvision.biz/jsec,exitMIDlet=-1",bx="trackName",cN="makePhoneCall=1,phoneNumber=+491754616132",cM="Vtrmin=120,Vtrmax=30,Vtrvmax=80,Vtrt=240,Vtrcvmin=4,Vtrc=30,Vtrd=5000,Vtrs=4,Vtrstart=void,Vtrstop=void",cL="OTA",V="After startup of MIDlet hide it",dc="logLevel",K="Clear all property settings (and user data in record store?)",X="trackingRate",bS="showMsg=1,msgbox.title=From Server,msgbox.message=Hello World,msgbox.type=INFO,msgbox.sec=3",bT='Property Name',bU="Avoid screen saver on some phone models",bV="cellDblclick",bW='task',bX="16/apps/preferences-desktop-multimedia.png",dn="appendCellId",cb="+497551309371",dN="<b><font color='red'>",dM="Download new MIDlet version",dP="Auto GPS connect",dO='int',dR="maxNumOfEntries",dQ="Stop the application",ck="email",dD="Serial cable GPS chip",db="Map radius in km",dr='Type',x="<b><font color='yellow'>Queued</font></b> ",y=",";
var eI=0;
qx.Class.define(f,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(eJ){qx.core.Object.call(this);
this.trackGui=eJ;
this.deviceId=dW;
this.propertyEditor=null;

if(this.trackGui.watchee!=null){this.deviceId=this.trackGui.watchee.getLoginName();
}this.loginPostListenerFunc=null;
this.window=null;
var eK=0;
this.COLUMN_BUTTON=eK++;
this.COLUMN_TYPE=eK++;
this.COLUMN_INFO=eK++;
this.COLUMN_KEY=eK++;
this.COLUMN_VALUE=eK++;
this.COLUMN_RESPONSE=eK++;
eI=eK++;
this.headerLabels=[O,dr,dq,bT,cW,A];
this.columnWidth=[];
this.columnWidth[this.COLUMN_BUTTON]=60;
this.columnWidth[this.COLUMN_TYPE]=42;
this.columnWidth[this.COLUMN_INFO]=180;
this.columnWidth[this.COLUMN_KEY]=100;
this.columnWidth[this.COLUMN_VALUE]=200;
this.columnWidth[this.COLUMN_RESPONSE]=640;
this.RESPONSE_TIMEOUT_SEC=120;
this.TYPE_CSV="csv";
},members:{setDeviceId:function(eL){if(this.deviceId!=eL){this.resetData();
}this.deviceId=eL;
this.setCaption();
},initForDeviceId:function(eM){this.setDeviceId(eM);
var eN=this.fillDeviceData();
if(!eN)this.trackGui.sendGetDeviceCommandList(eM);
},resetData:function(){this.tableData=[[]];
this.info("resetData");

if(this.propertyEditor!=null){this.propertyEditor.getTableModel().setData(this.tableData);
}},setCaption:function(){var eO=(org.xmlBlaster.util.isFilled(this.deviceId))?this.deviceId:bi;
var eP=this.trc(cE,cS,eO);

if(this.window!=null)this.window.setCaption(eP);
return eP;
},showForm:function(eQ){if(org.xmlBlaster.util.isDefined(eQ)){this.deviceId=eQ;
}var eR=new qx.ui.window.Window(this.setCaption(),xbGetQxIcon(bX));
this.window=eR;
eR.setLayout(new qx.ui.layout.Canvas());
eR.setWidth(720);
eR.setHeight(420);
this.trackGui.getMyRoot().add(eR,{left:4,top:60});
this.createDemoData();
eR.add(this.createTable(),{left:10,top:10,bottom:10,right:10});
this.loginPostListenerFunc=this.trackGui.getEventManager().addListener(eh,function(eS){if(this.getDevice()!=null&&this.getDevice().getDeviceInfo().isBlackbox()){this.trackGui.sendGetDeviceCommandList(this.deviceId);
}},this);
eR.open();
return eR;
},__tG:function(){},createTable:function(){this.propertyCellRendererFactory=new qx.ui.table.cellrenderer.Dynamic(this.propertyCellRendererFactoryFunc);
this.propertyCellEditorFactory=new qx.ui.table.celleditor.Dynamic(this.propertyCellEditorFactoryFunc);
this.responseCellRendererFactory=new qx.ui.table.cellrenderer.Dynamic(this.responseCellRendererFactoryFunc);
this.tableModel=new qx.ui.table.model.Simple();
this.tableModel.setColumns(this.headerLabels);
var eT={tableColumnModel:function(eV){return new qx.ui.table.columnmodel.Resize(eV);
}};
this.propertyEditor=new qx.ui.table.Table(this.tableModel,eT);
this.propertyEditor.setDecorator(null);
this.propertyEditor.setColumnVisibilityButtonVisible(false);
this.propertyEditor.setKeepFirstVisibleRowComplete(true);
this.propertyEditor.setStatusBarVisible(false);
this.propertyEditor.getSelectionModel().setSelectionMode(qx.ui.table.selection.Model.SINGLE_SELECTION);
var eU=this.propertyEditor.getTableColumnModel();
eU.getBehavior().setWidth(this.COLUMN_BUTTON,this.columnWidth[this.COLUMN_BUTTON]);
eU.getBehavior().setWidth(this.COLUMN_TYPE,this.columnWidth[this.COLUMN_TYPE]);
eU.getBehavior().setWidth(this.COLUMN_INFO,this.columnWidth[this.COLUMN_INFO]);
eU.getBehavior().setWidth(this.COLUMN_KEY,this.columnWidth[this.COLUMN_KEY]);
eU.getBehavior().setWidth(this.COLUMN_VALUE,this.columnWidth[this.COLUMN_VALUE]);
this.tableModel.setColumnEditable(this.COLUMN_VALUE,true);
eU.setDataCellRenderer(this.COLUMN_VALUE,this.propertyCellRendererFactory);
eU.setCellEditorFactory(this.COLUMN_VALUE,this.propertyCellEditorFactory);
eU.setDataCellRenderer(this.COLUMN_RESPONSE,this.responseCellRendererFactory);
eU.getBehavior().setWidth(this.COLUMN_RESPONSE,this.columnWidth[this.COLUMN_RESPONSE]);
this.propertyEditor.getTableModel().setData(this.tableData);
this.propertyEditor.getTableModel().addListener(bj,function(event){if(!(event instanceof qx.event.type.Data)){return;
}var fa=event.getData();
var eW=this.getTableModel();
var eY=eW.getValue(0,fa.firstRow);
var eX=eW.getValue(fa.firstColumn,fa.firstRow);
this.info("User edited property '"+eY+"' and entered value '"+eX+"'.");
},this.propertyEditor);
this.propertyEditor.addListener(bV,function(e){var fh=e.getRow();
var fg=e.getColumn();
this.info("User dblclicked "+e.getType()+" row="+fh+" col="+fg);

if(this.COLUMN_BUTTON==e.getColumn()){this.info("User dblclicked COLUMN_BUTTON");

if(this.getDevice().getDeviceInfo().isBlackbox()){this.info("User dblclicked BlackBox");
var fe=this.tableModel.getValue(this.COLUMN_KEY,fh);
var ff=this.tableModel.getValue(this.COLUMN_TYPE,fh);
var fc=this.tableModel.getValue(this.COLUMN_VALUE,fh);
var fb=this.tableModel.getValue(this.COLUMN_INFO,fh);
var fd=fc;

if(fe.length>0&&fe.indexOf(bu)!=-1){if(ff==ea){fd=fe+((fc==true)?1:0);
}else{fd=fe+fc;
}}this.info("User dblclicked BlackBox command="+fd);
this.__tI(fd,fh);
}else{this.info("User dblclicked no BlackBox, nothing done: deviceEnum="+this.getDevice().getDeviceInfo().getDeviceEnumStr());
this.__tH(fh);
}}},this);
return this.propertyEditor;
},responseOrExceptionOrTimeoutReceived:function(fi,fj,fk){var fr=fj;
var fn=org.xmlBlaster.util.PropTO;
var fp=null;
var fm=(fi!=null)?fi.getPropValue(fn.KEY_RESULT_CSVFLAG):null;
var fo=(fm!=null&&fm.indexOf(cf)!=-1);
var fq=(fm!=null&&fm.indexOf(eo)!=-1);
var fl=(fm!=null&&fm.indexOf(dw)!=-1);

if(fq){fk.requestResponseDispatcher.extendTimeout(fk.bounceId,fk.timeoutSec);
}
if(fi==null){fp=cX+fk.timeoutSec+dl;
}else if(fi.isException()){fp=dW;
fp+=dN+fi.getPropValue(fn.KEY_ERRORCODE)+cC;
fp+=dg+fi.getPropValue(fn.KEY_RESULT);
fp+=B+fi.getPropValue(fn.KEY_DATA)+dI;
}else{if(fi.getPropValue(fn.KEY_TASK)==net.watchee.Device.VALUE_TASK_NAMED_GETCOMMANDLIST){fp=ed+fi.getPropValue(fn.KEY_RESULT);
}else if(fq&&fl){fp=bl+fi.getPropValue(fn.KEY_RESULT);
}else if(fo){fp=x+fi.getPropValue(fn.KEY_RESULT);
}else{fp=cD+fi.getPropValue(fn.KEY_RESULT);
}}if(fr!=null)this.tableModel.setValue(this.COLUMN_RESPONSE,fr,fp);
},__tH:function(fs){if(this.trackGui.watchee==null)return;
var fB=this.tableModel.getValue(this.COLUMN_KEY,fs);
var fE=this.tableModel.getValue(this.COLUMN_TYPE,fs);
var fz=dW+this.tableModel.getValue(this.COLUMN_VALUE,fs);
var fF=this.tableModel.getValue(eI,fs);
var fu=fF[bW];
var ft=this.tableModel.getValue(this.COLUMN_INFO,fs);
var fv=org.xmlBlaster.util.Hashtable.parseCSV(fz);
var fx=fv.getKeys();

if(fu==eb){var fy=new net.watchee.PropertyCollection();
fy.add(new net.watchee.PropertyPair(dT,fB));

if(fE==ea){var fC=dW+fz;
fy.add(new net.watchee.PropertyPair(dU,fC));
fy.add(new net.watchee.PropertyPair(cu,fC));
}else if(fE==this.TYPE_CSV){var fC=dW+fz;
fy.add(new net.watchee.PropertyPair(dU,fC));
fy.add(new net.watchee.PropertyPair(cu,fC));
}else{for(var i=0,l=fx.length;i<l;i++){var fw=fx[i];

if(fw==fB){var fC=fv.get(fw);
fy.add(new net.watchee.PropertyPair(dU,fC));
fy.add(new net.watchee.PropertyPair(cu,fC));
}else{var fD=fv.get(fw);
fy.add(new net.watchee.PropertyPair(fw,fD));
}}}this.trackGui.sendActionToDevice(this.getDevice().getLoginName(),fy);
}else if(fu==ec){var fy=new net.watchee.PropertyCollection();
if(fB.indexOf(R)==0){fB=X;
}var fA=new net.watchee.PropertyPair(fB,fz);
fA.setDurable(true);
fy.add(fA);
this.trackGui.sendDeviceSettings(this.getDevice().getLoginName(),fy);
}},__tI:function(fG,fH){var fN=this.trackGui.getBounceNextVal();
fG=fG+cd+fN;
var fM=eq;
this.info("Sending command '"+fG+"'");
var fJ=fH;
var fK=this.RESPONSE_TIMEOUT_SEC;
var fL=false;

if(fG.indexOf(cL)!=-1){fK=300;
fL=true;
}var fI=false;
this.trackGui.getRequestResponseDispatcher().registerRequest(fN,fK,this.responseOrExceptionOrTimeoutReceived,this,fJ,fI,fL);
this.trackGui.sendRawDeviceCommand(this.deviceId,fN,fG,fM);
if(this.getDevice()!=null&&this.getDevice().getDeviceInfo().supportsSmsConfigurationOnly()){this.trackGui.infoMsgBox(this.trc(cl,dF,this.deviceId,fG),30000);
}else{this.trackGui.infoMsgBox(this.trc(cl,cP,this.deviceId,fG),3000);
}},getDevice:function(){if(this.deviceId!=null&&this.trackGui.watchee!=null)return this.trackGui.watchee.getDevice(this.deviceId);
return null;
},responseCellRendererFactoryFunc:function(fO){return new qx.ui.table.cellrenderer.Html();
},propertyCellRendererFactoryFunc:function(fP){var fV=fP.table;
var fS=fV.getTableModel();
var fT=fS.getRowData(fP.row);
var fW=fT[eI];
var fU;

for(var fR in fW){switch(fR){case dT:switch(fW[cp]){case dS:return new qx.ui.table.cellrenderer.Boolean;
case co:return new qx.ui.table.cellrenderer.Html;
case dV:return new qx.ui.table.cellrenderer.Password;
}break;
case ej:var fU=new qx.ui.table.cellrenderer.Replace;
var fQ={};
fW[cn].forEach(function(fX){if(fX instanceof Array){fQ[fX[0]]=fX[2];
}});
fU.setReplaceMap(fQ);
fU.addReversedReplaceMap();
return fU;
}}return new qx.ui.table.cellrenderer.Default();
},propertyCellEditorFactoryFunc:function(fY){var ge=fY.table;
var gc=ge.getTableModel();
var gd=gc.getRowData(fY.row);
var gg=gd[eI];
var gb=new qx.ui.table.celleditor.TextField;
var gf=null;

for(var ga in gg){switch(ga){case ej:if(gg.editable){gb=new qx.ui.table.celleditor.ComboBox();
}else{gb=new qx.ui.table.celleditor.SelectBox();
}gb.setListData(gg[cn]);
break;
case b:break;
case dT:switch(gg[cp]){case dV:gb=new qx.ui.table.celleditor.PasswordField;
break;
case co:return new qx.ui.table.cellrenderer.Html;
case dS:gb=new qx.ui.table.celleditor.CheckBox;
break;
case ck:gb.setValidationFunction(function(gh,gi){var gj=/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*\.(\w{2}|(com|net|org|edu|int|mil|gov|arpa|biz|aero|name|coop|info|pro|museum))$/;

if(gj.test(gh)){return gh;
}alert("You did not enter a valid email address");
return gi;
});
break;
}break;
case p:gb.setValidationFunction(function(gk,gl){var gm=new RegExp(gg[Q]);

if(gm.test(gk)){return gk;
}alert(gg['failMsg']);
return gl;
});
break;
case dp:gb.setValidationFunction(gg[el]);
break;
case a:gf=function(gn,go){if(!gn){alert("You need to supply a value here");
return go;
}return gn;
};
break;
}}return gb;
},createDemoData:function(){this.tableData=[[cs,dO,ce,bh,cU,bv,{'required':true}]];
},fillDeviceData:function(){var gp=this.getDevice();

if(gp==null){return false;
}
if(gp.getDeviceInfo().isJ2me()||gp.getDeviceInfo().isAndroid()){return this.fillJ2meData();
}return false;
},fillJ2meData:function(){var gr=true;
var gt=true;
var gs=bA;
var gq=new net.watchee.PropertyCollection();
gq.add(new net.watchee.PropertyPair(q,dY,gr,ea,Y,eb));
gq.add(new net.watchee.PropertyPair(cT,dY,gr,ea,cF,eb));
gq.add(new net.watchee.PropertyPair(U,dY,gr,ea,du,eb));
gq.add(new net.watchee.PropertyPair(dJ,cB,gr,gs,G,eb));
gq.add(new net.watchee.PropertyPair(df,bE,gr,gs,be,eb));
gq.add(new net.watchee.PropertyPair(F,cH,gr,gs,dM,eb));
gq.add(new net.watchee.PropertyPair(bp,cQ,gr,gs,J,eb));

if(device.getDeviceInfo().isAndroid()){gq.add(new net.watchee.PropertyPair(ei,er,gr,gs,cq,eb));
}else{gq.add(new net.watchee.PropertyPair(ei,bS,gr,gs,cq,eb));
}gq.add(new net.watchee.PropertyPair(de,cN,gr,gs,eE,eb));
gq.add(new net.watchee.PropertyPair(w,dz,gr,gs,ci,eb));
gq.add(new net.watchee.PropertyPair(bJ,dY,gr,ea,bt,eb));
gq.add(new net.watchee.PropertyPair(dE,eG,gr,gs,cg,eb));
gq.add(new net.watchee.PropertyPair(L,dH,gt,gs,g,eb));
gq.add(new net.watchee.PropertyPair(ez,en,gt,gs,ey,eb));
gq.add(new net.watchee.PropertyPair(dA,cx,gr,this.TYPE_CSV,cJ,eb));
gq.add(new net.watchee.PropertyPair(eA,bd,gr,this.TYPE_CSV,cc,eb));
gq.add(new net.watchee.PropertyPair(ct,bY,gr,this.TYPE_CSV,ep,eb));
gq.add(new net.watchee.PropertyPair(ct,bL,gr,this.TYPE_CSV,bI,eb));
gq.add(new net.watchee.PropertyPair(s,et,gr,this.TYPE_CSV,bm,eb));
gq.add(new net.watchee.PropertyPair(P,dB,gr,gs,bO,eb));
gq.add(new net.watchee.PropertyPair(br,dY,gr,ea,dQ,eb));
gq.add(new net.watchee.PropertyPair(I,dY,gr,ea,K,ec));
gq.add(new net.watchee.PropertyPair(bD,o,gr,gs,dK,ec));
gq.add(new net.watchee.PropertyPair(cI,cG,gr,dX,dj,ec));
gq.add(new net.watchee.PropertyPair(bR,dk,gr,gs,eu,ec));
gq.add(new net.watchee.PropertyPair(dV,bc,gr,dV,cv,ec));
gq.add(new net.watchee.PropertyPair(bw,cr,gr,dX,cy,ec));
gq.add(new net.watchee.PropertyPair(bs,bF,gr,dX,c,ec));
gq.add(new net.watchee.PropertyPair(bz,cr,gr,dX,dt,ec));
gq.add(new net.watchee.PropertyPair(z,cY,gr,dX,j,ec));
gq.add(new net.watchee.PropertyPair(eB,cb,gr,cm,bg,ec));
gq.add(new net.watchee.PropertyPair(bN,W,gr,dX,dG,ec));
gq.add(new net.watchee.PropertyPair(dm,S,gr,dX,ds,ec));
gq.add(new net.watchee.PropertyPair(N,dY,gr,ea,bP,ec));
gq.add(new net.watchee.PropertyPair(eC,dY,gr,ea,D,ec));
gq.add(new net.watchee.PropertyPair(t,dY,gr,ea,dP,ec));
gq.add(new net.watchee.PropertyPair(eH,dY,gr,ea,bk,ec));
gq.add(new net.watchee.PropertyPair(cR,dY,gr,ea,v,ec));
gq.add(new net.watchee.PropertyPair(ee,ek,gr,ea,V,ec));
gq.add(new net.watchee.PropertyPair(r,bn,gr,by,db,ec));
gq.add(new net.watchee.PropertyPair(ef,dY,gr,ea,bq,ec));
gq.add(new net.watchee.PropertyPair(cO,dY,gr,ea,bo,ec));
gq.add(new net.watchee.PropertyPair(u,dY,gr,dX,bB,ec));
gq.add(new net.watchee.PropertyPair(bH,dY,gr,ea,dD,ec));
gq.add(new net.watchee.PropertyPair(dn,dY,gr,ea,E,ec));
gq.add(new net.watchee.PropertyPair(bK,dY,gr,ea,bU,ec));
gq.add(new net.watchee.PropertyPair(dc,m,gr,this.TYPE_CSV,eD,ec));
gq.add(new net.watchee.PropertyPair(dL,dd,gr,dX,dh,ec));
gq.add(new net.watchee.PropertyPair(da,dW,gr,gs,dx,ec));
gq.add(new net.watchee.PropertyPair(n,dy,gr,this.TYPE_CSV,cK,ec));
gq.add(new net.watchee.PropertyPair(em,dY,gr,ea,bM,ec));
gq.add(new net.watchee.PropertyPair(cV,C,gr,dX,H,ec));
gq.add(new net.watchee.PropertyPair(cj,dY,gr,ea,eF,ec));
gq.add(new net.watchee.PropertyPair(dR,bG,gr,dX,dC,ec));
gq.add(new net.watchee.PropertyPair(bb,ba,gr,gs,cw,ec));
gq.add(new net.watchee.PropertyPair(T,cM,gr,gs,k,ec));
gq.add(new net.watchee.PropertyPair(eg,cA,gr,gs,es,ec));
gq.add(new net.watchee.PropertyPair(bx,org.xmlBlaster.util.getDateStr(),gr,gs,ex,ec));
gq.add(new net.watchee.PropertyPair(di,dY,gr,ea,ch,ec));
gq.add(new net.watchee.PropertyPair(ca,ek,gr,ea,h,ec));
gq.add(new net.watchee.PropertyPair(bf,ew,gr,this.TYPE_CSV,d,ec));
this.loadData(gq);
return true;
},loadData:function(gu){this.tableData=[];
var gC=gu.propHash;
var gB=gC.getValues();

for(var i=0,l=gB.length;i<l;i++){var gy=gB[i];
var gw=gy.getTypedValue();
var gD=gy.getKey();
var gF=gy.getType();
var gx=gy.getTimestamp();
var gA=gy.getFlag();
var gv=gy.getInfo();
var gG=dW;
var gE={'required':true,'task':gA};

if(gy.isBool())gE={'type':dS,'task':gA};

if(gF==dV||gv.indexOf("Password")!=-1){gw=dW+gw;
gE={'type':bQ,'required':true,'task':gA};
}
if(gF==cm||gv.indexOf("PhoneNumber")!=-1){gE={'regExp':M,'failMsg':bC,'task':gA};
}
if(gF==this.TYPE_CSV){gE={'type':cz,'options':gy.getTypedValue().split(y),'editable':true,'task':gA};
}var gz=[cs,gF,gv,gD,gw,gG,gE];
this.tableData.push(gz);
}this.propertyEditor.getTableModel().setData(this.tableData);
},destroyPopup:function(){if(this.loginPostListenerFunc!=null){this.trackGui.getEventManager().removeListener(eh,this.loginPostListenerFunc);
this.loginPostListenerFunc=null;
}this.trackGui.getMyRoot().remove(this.window);
this.window.close();
this.trackGui=null;
}},destruct:function(){this._disposeFields();
this._disposeObjects();
}});
})();
(function(){var b="Function",a="qx.ui.table.cellrenderer.Dynamic";
qx.Class.define(a,{extend:qx.ui.table.cellrenderer.Default,construct:function(c){qx.ui.table.cellrenderer.Default.call(this);

if(c){this.setCellRendererFactoryFunction(c);
}},properties:{cellRendererFactoryFunction:{check:b,nullable:true,init:null}},members:{createDataCellHtml:function(d,e){var g=this.getCellRendererFactoryFunction();

if(!g){throw new Error("No function provided! Aborting.");
}var f=g(d);
return f.createDataCellHtml(d,e);
}}});
})();
(function(){var b="Function",a="qx.ui.table.celleditor.Dynamic";
qx.Class.define(a,{extend:qx.core.Object,implement:qx.ui.table.ICellEditorFactory,construct:function(c){qx.core.Object.call(this);

if(c){this.setCellEditorFactoryFunction(c);
}this.__tJ={};
},properties:{cellEditorFactoryFunction:{check:b,nullable:true,init:null}},members:{__sn:null,__tJ:null,createCellEditor:function(d){var e=this.getCellEditorFactoryFunction();
this.__sn=e(d);
var f=this.__sn.createCellEditor(d);
this.__tJ[f.toHashCode()]=d;
return f;
},getCellEditorValue:function(g){var i=this.getCellEditorFactoryFunction();
var h=this.__tJ[g.toHashCode()];
this.__sn=i(h);
var j=this.__sn.getCellEditorValue(g);
return j;
}},destruct:function(){this.__sn=null;
}});
})();
(function(){var c="",b="qx.ui.table.cellrenderer.Password",a="*";
qx.Class.define(b,{extend:qx.ui.table.cellrenderer.Default,members:{_getContentHtml:function(d){var e=d.value;

if(e===null){e=c;
}d.value=e.replace(/./g,a);
return qx.bom.String.escape(this._formatValue(d));
}}});
})();
(function(){var d="Function",c="undefined",b="qx.ui.table.cellrenderer.Replace",a="Object";
qx.Class.define(b,{extend:qx.ui.table.cellrenderer.Default,properties:{replaceMap:{check:a,nullable:true,init:null},replaceFunction:{check:d,nullable:true,init:null}},members:{_getContentHtml:function(e){var h=e.value;
var f=this.getReplaceMap();
var g=this.getReplaceFunction();
var i;
if(f){i=f[h];

if(typeof i!=c){e.value=i;
return qx.bom.String.escape(this._formatValue(e));
}}if(g){e.value=g(h);
}return qx.bom.String.escape(this._formatValue(e));
},addReversedReplaceMap:function(){var j=this.getReplaceMap();

for(var l in j){var k=j[l];
j[k]=l;
}return true;
}}});
})();
(function(){var g="",f="Function",e="qx.ui.table.celleditor.ComboBox",d="number",c="Array",b="table-editor-combobox",a="appear";
qx.Class.define(e,{extend:qx.core.Object,implement:qx.ui.table.ICellEditorFactory,properties:{validationFunction:{check:f,nullable:true,init:null},listData:{check:c,init:null,nullable:true}},members:{createCellEditor:function(h){var k=new qx.ui.form.ComboBox().set({appearance:b});
var m=h.value;
k.originalValue=m;
var p=h.table.getTableColumnModel().getDataCellRenderer(h.col);
var n=p._getContentHtml(h);

if(m!=n){m=n;
}if(m===null||m===undefined){m=g;
}var j=this.getListData();

if(j){var o;

for(var i=0,l=j.length;i<l;i++){var q=j[i];

if(q instanceof Array){o=new qx.ui.form.ListItem(q[0],q[1]);
}else{o=new qx.ui.form.ListItem(q,null);
}k.add(o);
}}k.setValue(g+m);
k.addListener(a,function(){k.selectAllText();
});
return k;
},getCellEditorValue:function(r){var t=r.getValue()||g;
var s=this.getValidationFunction();

if(s){t=s(t,r.originalValue);
}
if(typeof r.originalValue==d){t=parseFloat(t);
}return t;
}}});
})();
(function(){var b="qx.ui.table.celleditor.PasswordField",a="table-editor-textfield";
qx.Class.define(b,{extend:qx.ui.table.celleditor.AbstractField,members:{_createEditor:function(){var c=new qx.ui.form.PasswordField();
c.setAppearance(a);
return c;
}}});
})();
(function(){var c="password",b="qx.ui.form.PasswordField",a="input";
qx.Class.define(b,{extend:qx.ui.form.TextField,members:{_createInputElement:function(){var d=new qx.html.Input(c);
d.addListener(a,this._onHtmlInput,this);
return d;
}}});
})();
(function(){var n="infoMsgBox",m="",l="errorMsgBox",k="-",j="AjaxAnimator",i="Get account %1",h="isNew=true",g="execute",f="getAccount",d="button title",bn="addDeviceMapping",bm=":loginName",bl="getDeviceMapping",bk="User Administration",bj="Add DeviceMapping %1",bi="askMsgBox",bh="insert",bg="getAccountLoginNames",bf="Destroy",be="window title",u="delete",v="You have not permission to destroy me",s=":deviceImei",t="DeviceMapping saved",q="oemAuthorized",r="22/userAdmin.png",o="application/watchee.service.accountTO",p="DeviceMapping added with null response",A="Destroying account <b>%1</b> ...<p>Note: This can take half an hour depending on the amount of data</p><br />Please be patient ...",B="Failed to close _searchAccountWindow: ",J=":mergeIfExists",H="Remove DeviceMapping %1",R="loginName",M="Nothing destroyed, %1 is still a <i>%2</i> user",ba="Add deviceMapping failed: %1 %2",W="Delete",D="askMgsBox title",bd="Adding get account login names failed: %1 %2",bc=":deviceLoginName",bb="deviceMappingId=",C="The account <b>%1</b> is NOT destroyed: %2",F="Remove deviceMapping failed: %1 %2",G="Get deviceMapping failed: %1 %2",I="DeviceMapping removed",K="Add account failed: %1 %2",N="Add account failed with empty data",T="Account added",Y="update",w="DeviceMapping didn't exist",x="Save",E="DeviceMapping added",Q="Account changed",P="track.admin.account.UserAdminWindow",O="Get account list",V="Get account failed: %1 %2",U="The account <b>%1</b> is destroyed",L="DeviceMapping removed with null response",S="close",a="Get DeviceMapping %1",X=":deviceMappingId",y="Do you really want to destroy permanently the account <br /><b>%1</b>?",z=",";
var c=40;
var b=0;
qx.Class.define(P,{extend:track.util.WindowWithHelpIcon,construct:function(bo){track.util.WindowWithHelpIcon.call(this);
this.trackGui=bo||null;
var bp=new qx.ui.layout.HBox();
bp.setSpacing(10);
this.setLayout(bp);
this.setCaption(this.trc(be,bk));
this.setIcon(xbGetIcon(r));
this.visibleCompany=false;
this.companyGroupBox=null;
this.accountGroupBox=null;
this.deviceGroupBox=null;
this._searchAccountWindow=null;
this.tabIndex=300;
this.addListener(S,function(e){this.clear();
},this);
},members:{getAdminWindowTop:function(){return c;
},getAdminWindowLeft:function(){return b;
},isInsertAccountAuthorized:function(){return this.mayInsert;
},isUpdateAccountAuthorized:function(){return this.mayUpdate;
},isDeleteAccountAuthorized:function(){return this.mayDelete;
},createWindow:function(){var bu=this.trackGui.getMyAccountTO();
var bt=bu.getAccountPropertyStr(q,m);
var bv=org.xmlBlaster.util.Hashtable.parseCSV(bt);
this.mayInsert=bv.getBoolean(bh,true);
this.mayUpdate=bv.getBoolean(Y,true);
this.mayDelete=bv.getBoolean(u,true);

if(this.visibleCompany){this.companyGroupBox=new track.admin.account.CompanyGroupBox(this);
var bs=this.companyGroupBox.create();
this.add(bs);
}this.accountGroupBox=new track.admin.account.AccountGroupBox(this);
var bq=this.accountGroupBox.create();
this.add(bq);
this.deviceGroupBox=new track.admin.account.DeviceGroupBox(this);
var br=this.deviceGroupBox.create();
this.add(br);
var bw=new qx.ui.form.Button(this.trc(d,x));
bw.setTabIndex(this.tabIndex++);
this.add(bw);
bw.addListener(g,function(e){this.sendSaveData();
},this);
bw.setEnabled(this.isInsertAccountAuthorized());
this.removeButton=new qx.ui.form.Button(this.trc(d,bf));
this.removeButton.setTabIndex(this.tabIndex++);
this.add(this.removeButton);
this.removeButton.addListener(g,function(e){this.sendRemoveAccount();
},this);
this.removeButton.setEnabled(this.isDeleteAccountAuthorized());
this.moveTo(this.getAdminWindowLeft(),this.getAdminWindowTop());
this.open();
return true;
},openSearchAccountWindow:function(){this._searchAccountWindow=new track.admin.account.SearchAccountWindow(this.trackGui,this);
this._searchAccountWindow.createWindow();
this._searchAccountWindow.moveTo(this._searchAccountWindow.getAdminWindowLeft(),this._searchAccountWindow.getAdminWindowTop());
this._searchAccountWindow.sendGetAccountDeviceImportantFields();
},resetDeviceMappingGui:function(){if(this.deviceGroupBox!=null)this.deviceGroupBox.onChangedDeviceMappingTO(null);
},sendGetAccountLoginNames:function(){this.watchee=this.trackGui.watchee;

if(this.watchee==null)throw new Error("sendGetAccountLoginNames with watchee is null");

if(this.accountGroupBox==null)return;
var bA=org.xmlBlaster.util.PropTO;
var bB=this.trackGui.getRequestResponseDispatcher();
var bC=bA.VALUE_TASK_NAMED_GETACCOUNTLOGINNAMES+k+bB.getRequestIdNextVal();
var by=new Array();
by.push(new bA(bA.KEY_SERVICENAME,bA.VALUE_SERVICE_ACCOUNT));
by.push(new bA(bA.KEY_TASK,bA.VALUE_TASK_NAMED_GETACCOUNTLOGINNAMES));
by.push(new bA(bA.KEY_DATA,m));
by.push(new bA(bA.KEY_BOUNCE,bC));
var bx=new org.xmlBlaster.util.ServiceTO(by);
var bz=new org.xmlBlaster.util.ServiceListTO(bx);
this.trackGui.startAjaxAnimator(this.trc(j,O),2000);
bB.registerRequest(bC,120,this.onGetAccountLoginNames,this,m);
this.watchee.publishServiceMessage(bz,this.trackGui.returnQosOrException,this.trackGui,bg);
},onGetAccountLoginNames:function(bD,bE,bF){if(bD.isException()){this.trackGui.errorMsgBox(this.trc(l,bd,bD.getBounce(),bD.getErrorMessage()));
this.close();
return;
}var bG=bD.getPropValue(org.xmlBlaster.util.PropTO.KEY_RESULT);
var bH=bG.split(z);
this.accountGroupBox.onLoginNames(bH);
},sendGetAccount:function(bI){var bI=bI||null;
this.watchee=this.trackGui.watchee;

if(this.watchee==null)throw new Error("sendGetAccount with watchee is null");

if(this.accountGroupBox==null)return;
this.deviceGroupBox.onChangedDeviceMappingTO(null);
var bM=org.xmlBlaster.util.PropTO;
var bN=this.trackGui.getRequestResponseDispatcher();
var bO=bM.VALUE_TASK_NAMED_GETACCOUNT+k+bN.getRequestIdNextVal();
var bK=new Array();
bK.push(new bM(bM.KEY_SERVICENAME,bM.VALUE_SERVICE_ACCOUNT));
bK.push(new bM(bM.KEY_TASK,bM.VALUE_TASK_NAMED_GETACCOUNT));
bK.push(new bM(bM.KEY_DATA+bm,bI));
bK.push(new bM(bM.KEY_RESULTENCODING,bM.ENCODING_PLAIN));
bK.push(new bM(bM.KEY_BOUNCE,bO));
var bJ=new org.xmlBlaster.util.ServiceTO(bK);
var bL=new org.xmlBlaster.util.ServiceListTO(bJ);
this.trackGui.startAjaxAnimator(this.trc(j,i,bI),2000);
bN.registerRequest(bO,120,this.onGetAccountTO,this,m);
this.watchee.publishServiceMessage(bL,this.trackGui.returnQosOrException,this.trackGui,f);
},onGetAccountTO:function(bP,bQ,bR){if(bP.isException()){this.trackGui.errorMsgBox(this.trc(l,V,bP.getBounce(),bP.getErrorMessage()));
return;
}var bS=false;
var bT=net.watchee.AccountTO.parse(this.trackGui.watchee,bP.getResult(),bS);
this.accountGroupBox.onChangedAccountTO(bT);
this.sendGetDeviceMapping(bT.getLoginName());
},sendGetDeviceMapping:function(bU){var bU=bU||null;
this.watchee=this.trackGui.watchee;

if(this.watchee==null)throw new Error("sendGetDeviceMapping with watchee is null");

if(this.accountGroupBox==null)return;
var bY=org.xmlBlaster.util.PropTO;
var ca=this.trackGui.getRequestResponseDispatcher();
var cb=bY.VALUE_TASK_NAMED_GETDEVICEMAPPING+k+ca.getRequestIdNextVal();
var bW=new Array();
bW.push(new bY(bY.KEY_SERVICENAME,bY.VALUE_SERVICE_ACCOUNT));
bW.push(new bY(bY.KEY_TASK,bY.VALUE_TASK_NAMED_GETDEVICEMAPPING));
bW.push(new bY(bY.KEY_DATA+bm,bU));
bW.push(new bY(bY.KEY_RESULTENCODING,bY.ENCODING_PLAIN));
bW.push(new bY(bY.KEY_BOUNCE,cb));
var bV=new org.xmlBlaster.util.ServiceTO(bW);
var bX=new org.xmlBlaster.util.ServiceListTO(bV);
this.trackGui.startAjaxAnimator(this.trc(j,a,bU),2000);
ca.registerRequest(cb,120,this.onGetDeviceMapping,this,m);
this.watchee.publishServiceMessage(bX,this.trackGui.returnQosOrException,this.trackGui,bl);
},onGetDeviceMapping:function(cc,cd,ce){if(cc.isException()){this.trackGui.errorMsgBox(this.trc(l,G,cc.getBounce(),cc.getErrorMessage()));
return;
}var ch=cc.getResult();

if(ch==null||ch.length==0){this.deviceGroupBox.onChangedDeviceMappingTO(null);
}else{var cg=net.watchee.PropertyCollection.parseXml(ch);
var cf=new track.admin.account.DeviceMappingTO(this.trackGui,cg);
this.deviceGroupBox.onChangedDeviceMappingTO(cf);
}},onPreOpen:function(){this.sendGetAccountLoginNames();
return true;
},sendSaveData:function(){var cj=this.accountGroupBox.fillAccountTOFromGui();

if(cj!=null){this.sendAddAccount(cj);

if(this.deviceGroupBox.doAddDevice()){var ci=this.deviceGroupBox.fillDeviceMappingTOFromGui(true);

if(ci!=null)this.sendAddDeviceMapping(ci);
}else{if(this.deviceGroupBox.getImei(false)!=null){var ci=this.deviceGroupBox.fillDeviceMappingTOFromGui(false);

if(ci!=null)this.sendRemoveDeviceMapping(ci);
}}return true;
}return false;
},sendRemoveAccount:function(){var cl=this.accountGroupBox.fillAccountTOFromGui();

if(cl!=null){if(this.trackGui.watchee==null)return;

if(!this.trackGui.getSessionProfile().hasPermissionForDestroyAccount()){this.trackGui.infoMsgBox(this.trc(n,v));
return;
}var ck=cl.getLoginName();
this.trackGui.askMsgBox(this.trc(D,W),this.trc(bi,y,ck),function(cm){if(cm){this.removeButton.setEnabled(false);
qx.event.Timer.once(function(e){this.removeButton.setEnabled(true);
},this,2000);
var cn=this.trackGui.infoMsgBox(this.trc(n,A,ck));
var co=m;
this.trackGui.sendRemoveAccount(ck,co,function(cp,cq,cr){this.trackGui.getMsgBox().closeCurrentWindow();

if(cp.isException()){this.trackGui.errorMsgBox(this.trc(n,C,ck,cp.getErrorHtmlMessage()));
}else{this.trackGui.infoMsgBox(this.trc(n,U,ck));
this.accountGroupBox.onChangedAccountTO(null);
this.accountGroupBox.onLoginNameDeleted(ck);
this.deviceGroupBox.onChangedDeviceMappingTO(null);
}},this);
}else{this.trackGui.infoMsgBox(this.trc(n,M,ck,this.trackGui.getMyOemName()),4000);
}},this);
return true;
}return false;
},sendAddAccount:function(cs){var cs=cs||null;
this.watchee=this.trackGui.watchee;

if(this.watchee==null)throw new Error("sendAddAccount with watchee is null");

if(this.accountGroupBox==null)return;
var cw=org.xmlBlaster.util.PropTO;
var cx=this.trackGui.getRequestResponseDispatcher();
var cy=cw.VALUE_TASK_NAMED_ADDACCOUNT+k+cx.getRequestIdNextVal();
var cu=new Array();
cu.push(new cw(cw.KEY_SERVICENAME,cw.VALUE_SERVICE_ACCOUNT));
cu.push(new cw(cw.KEY_TASK,cw.VALUE_TASK_NAMED_ADDACCOUNT));
cu.push(new cw(cw.KEY_DATA,cs.toXml()));
cu.push(new cw(cw.KEY_DATA+J,true));
cu.push(new cw(cw.KEY_MIME,o));
cu.push(new cw(cw.KEY_RESULTENCODING,cw.ENCODING_PLAIN));
cu.push(new cw(cw.KEY_RESULTMIME,org.xmlBlaster.util.PropTO.VALUE_RESULTMIME_CSV));
cu.push(new cw(cw.KEY_BOUNCE,cy));
var ct=new org.xmlBlaster.util.ServiceTO(cu);
var cv=new org.xmlBlaster.util.ServiceListTO(ct);
this.trackGui.startAjaxAnimator(this.trc(j,i,cs.getLoginName()),2000);
cx.registerRequest(cy,120,this.onAddAccountResponse,this,m);
this.watchee.publishServiceMessage(cv,this.trackGui.returnQosOrException,this.trackGui,f);
},onAddAccountResponse:function(cz,cA,cB){var cz=cz||null;

if(cz==null){this.trackGui.errorMsgBox(this.trc(l,N));
return;
}
if(cz.isException()){this.trackGui.errorMsgBox(this.trc(l,K,cz.getBounce(),cz.getErrorMessage()));
return;
}var cD=cz.getResult();
var cC=org.xmlBlaster.util.Hashtable.parseCSV(cD);
var cF=cD.indexOf(h)!=-1;
var cE=cC.get(R,null);
this.accountGroupBox.onLoginNameAdded(cE);

if(cF)this.trackGui.infoMsgBox(this.trc(n,T));
else this.trackGui.infoMsgBox(this.trc(n,Q));
},sendAddDeviceMapping:function(cG){var cG=cG||null;
this.watchee=this.trackGui.watchee;

if(this.watchee==null)throw new Error("sendAddDeviceMapping with watchee is null");

if(this.accountGroupBox==null)return;
var cH=cG.getLoginName();
var cL=org.xmlBlaster.util.PropTO;
var cM=this.trackGui.getRequestResponseDispatcher();
var cN=cL.VALUE_TASK_NAMED_ADDDEVICEMAPPING+k+cM.getRequestIdNextVal();
var cI=new Array();
cI.push(new cL(cL.KEY_SERVICENAME,cL.VALUE_SERVICE_ACCOUNT));
cI.push(new cL(cL.KEY_TASK,cL.VALUE_TASK_NAMED_ADDDEVICEMAPPING));
cI.push(new cL(cL.KEY_DATA,cG.toXml()));
cI.push(new cL(cL.KEY_MIME,cL.VALUE_RESULTMIME_PROPERTYCOLLECTION));
cI.push(new cL(cL.KEY_RESULTENCODING,cL.ENCODING_PLAIN));
cI.push(new cL(cL.KEY_RESULTMIME,org.xmlBlaster.util.PropTO.VALUE_RESULTMIME_CSV));
cI.push(new cL(cL.KEY_BOUNCE,cN));
var cK=new org.xmlBlaster.util.ServiceTO(cI);
var cJ=new org.xmlBlaster.util.ServiceListTO(cK);
this.trackGui.startAjaxAnimator(this.trc(j,bj,cH),2000);
cM.registerRequest(cN,120,this.onAddDeviceMappingResponse,this,m);
this.watchee.publishServiceMessage(cJ,this.trackGui.returnQosOrException,this.trackGui,bn);
},onAddDeviceMappingResponse:function(cO,cP,cQ){if(cO==null){this.trackGui.infoMsgBox(this.trc(n,p));
return;
}
if(cO.isException()){this.trackGui.errorMsgBox(this.trc(l,ba,cO.getBounce(),cO.getErrorMessage()));
return;
}var cR=cO.getResult();
var cS=cR.indexOf(h)!=-1;

if(cS)this.trackGui.infoMsgBox(this.trc(n,E));
else this.trackGui.infoMsgBox(this.trc(n,t));
},sendRemoveDeviceMapping:function(cT){var cT=cT||null;
this.watchee=this.trackGui.watchee;

if(this.watchee==null)throw new Error("sendRemoveDeviceMapping with watchee is null");

if(this.accountGroupBox==null)return;
var cU=cT.getLoginName();
var cY=org.xmlBlaster.util.PropTO;
var da=this.trackGui.getRequestResponseDispatcher();
var db=cY.VALUE_TASK_NAMED_REMOVEDEVICEMAPPING+k+da.getRequestIdNextVal();
var cV=new Array();
cV.push(new cY(cY.KEY_SERVICENAME,cY.VALUE_SERVICE_ACCOUNT));
cV.push(new cY(cY.KEY_TASK,cY.VALUE_TASK_NAMED_REMOVEDEVICEMAPPING));
cV.push(new cY(cY.KEY_DATA+bc,cT.getLoginName()));
cV.push(new cY(cY.KEY_DATA+X,cT.getDeviceMappingId()));
cV.push(new cY(cY.KEY_DATA+s,cT.getDeviceImei()));
cV.push(new cY(cY.KEY_RESULTMIME,org.xmlBlaster.util.PropTO.VALUE_RESULTMIME_CSV));
cV.push(new cY(cY.KEY_BOUNCE,db));
var cX=new org.xmlBlaster.util.ServiceTO(cV);
var cW=new org.xmlBlaster.util.ServiceListTO(cX);
this.trackGui.startAjaxAnimator(this.trc(j,H,cU),2000);
da.registerRequest(db,120,this.onRemoveDeviceMappingResponse,this,m);
this.watchee.publishServiceMessage(cW,this.trackGui.returnQosOrException,this.trackGui,bn);
},onRemoveDeviceMappingResponse:function(dc,dd,de){if(dc==null){this.trackGui.infoMsgBox(this.trc(n,L));
return;
}
if(dc.isException()){this.trackGui.errorMsgBox(this.trc(l,F,dc.getBounce(),dc.getErrorMessage()));
return;
}var df=dc.getResult();
var dg=df.indexOf(bb)!=-1;

if(dg)this.trackGui.infoMsgBox(this.trc(n,I));
else this.trackGui.infoMsgBox(this.trc(n,w));
this.resetDeviceMappingGui();
},showCompanyGroupBox:function(){return this.visibleCompany;
},getCompanyGroupBox:function(){return this.companyGroupBox;
},getAccountGroupBox:function(){return this.accountGroupBox;
},clear:function(){try{if(this._searchAccountWindow!=null){this._searchAccountWindow.destroyPopup();
this._searchAccountWindow=null;
}}catch(dh){this.trackGui.errorMsgDeveloper(B+dh);
}},destroyPopup:function(){this.clear();

if(this.trackGui!=null){this.trackGui.getMyRoot().remove(this);
this.trackGui=null;
}this.close();
}},destruct:function(){this.destroyPopup();
}});
})();
(function(){var t="",s="label name",r="[new company]",q="Aldi",p="Lidl",o="label",n="Edeka",m="Companyname:",l="groupbox title",k="AdminEmail:",d="changeSelection",j=".de",h="select box item",c="Company",b="AdminEmail: ",g="Company: ",f="track.admin.account.CompanyGroupBox",i="Company:",a="admin@";
qx.Class.define(f,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(u){qx.core.Object.call(this);
this.userAdminWindow=u;
},members:{create:function(){this.groupBox=new qx.ui.groupbox.GroupBox(this.trc(l,c));
var v=new qx.ui.layout.Grid(3,2);
this.groupBox.setLayout(v);
var w=new qx.ui.basic.Label(this.trc(s,i));
var y=new qx.ui.basic.Label(this.trc(s,m));
var x=new qx.ui.basic.Label(this.trc(s,k));
this.groupBox.add(w,{row:0,column:0});
this.groupBox.add(y,{row:1,column:0});
this.groupBox.add(x,{row:2,column:0});
this.__tK=new qx.ui.form.SelectBox();
this.__tK.add(new qx.ui.form.ListItem(this.trc(h,r),null,r));
this.__tK.add(new qx.ui.form.ListItem(q,null,q));
this.__tK.add(new qx.ui.form.ListItem(p,null,p));
this.__tK.add(new qx.ui.form.ListItem(n,null,n));
this.__tL=new qx.ui.form.TextField();
this.__tM=new qx.ui.form.TextField();
this.groupBox.add(this.__tK,{row:0,column:1});
this.groupBox.add(this.__tL,{row:1,column:1});
this.groupBox.add(this.__tM,{row:2,column:1});
this.__tK.addListener(d,function(e){var A=(e.getData().length==0)?null:e.getData()[0];
var z=(A==null)?t:A.getValue();

if(z==t||z==r){this.__tL.setValue(t);
this.__tL.setEnabled(true);
this.__tM.setValue(t);
}else{this.__tL.setValue(z);
this.__tL.setEnabled(false);
this.__tM.setValue(a+z+j);
}this.userAdminWindow.accountGroupBox.companyChanged(z);
},this);
return this.groupBox;
},getCompany:function(){return this.__tK.getValue();
},getCompanyInput:function(){return (this.trc(o,g)+this.__tL.getValue()+this.trc(o,b)+this.__tM.getValue());
}},destruct:function(){this._disposeFields();
this._disposeObjects();
}});
})();
(function(){var dE="select box item",dD="label name",dC="",dB="errorMsgBox",dA="label",dz="durchdacht",dy="Skipper",dx=" ",dw="GPSvision",dv="Pferdetracking",ci="Netwake",ch="Forstware",cg="Binnenschiffer",cf="Telkomatik",ce="Elite-Sportcars",cd="changeSelection",cc="execute",cb="Jetski",ca="[new account]",bY="Auto-Wacht",dL="SIMNET",dM="GPS-ZIP",dJ="%1 found",dK="NEW_INSTANCE",dH="Alarm.de",dI="cleverID",dF="Magicmaps",dG="Softway-Computers",dN="de_DE",dO="-",dd="Account",dc="AET",df="Etc/GMT-4 (240)",de="ACT",dh="Elite Sportcars AT",dg="Etc/GMT+10 (-600)",dj="Etc/GMT+1",di="Europe/Vienna (60)",db="cs",da="Auto Wacht DE",n="Search Accounts",o="First name:",p="Asia/Riyadh87",q="Etc/GMT-11 (660)",r="BST",s="CST (-360)",t="Etc/GMT-5",u="cleverID DE",v="Timezone:",w="Alarm.de DE",ed="Email:",ec="PRT (-240)",eb="Permission:",ea="Etc/GMT-13",eh="Etc/GMT+9",eg="Czech cs",ef="Phone number:",ee="...",ej="Europe/Zurich (60)",ei="CST",bn="CTT",bo="Europe/Moscow",bl="BST (360)",bm="input",br="button title",bs="Etc/GMT-3",bp="@",bq="America/Caracas",bj="Etc/GMT-2 (120)",bk="Europe/Berlin",P="Etc/GMT-2",O="VST (420)",R="[new company]",Q="groupbox title",L="Etc/GMT-12",K=".",N="OEM:",M="<br/>Last Web Login: ",J="Gender:",I="GMT",by="Etc/GMT-14 (840)",bz="Max SMS/Month:",bA="Etc/GMT+11 (-660)",bB="Comfort",bu="Invalid email '%1', example 'order@gpsvision.de'",bv="IST",bw="Invalid portal password: %1",bx="Telkomatik Schweiz",bC="Softway Computers India",bD="Etc/GMT+3",bc="Magicmaps DE",bb="Password:",ba="Etc/GMT-5 (300)",Y="SIMNET CZ",X="Europe/Moscow (180)",W="Etc/GMT+12",V="button",U="PRT",bg="Etc/GMT-4",bf="Asia/Riyadh87 (187)",bE="Etc/GMT-9",bF="End-Date:",bG="GMT (0)",bH="Europe/Vienna",bI="Pacific/Chatham",bJ="CTT (480)",bK="Europe/Athens",bL="Etc/GMT+12 (-720)",bM="Account-Details",bN="SkipperInAppPurchase",cq="Etc/GMT+4",cp="Etc/GMT+11",co="Pacific/Auckland",cn="+49",cu="Etc/GMT-9 (540)",ct="%1 matches found",cs="red",cr="Pacific/Norfolk",cy="Alias:",cx="Pacific/Norfolk (690)",cV="Etc/GMT+1 (-60)",cW="hu",cT=":",cU="YYYY-MM-DD",cR="IST (330)",cS="Professional",cP="Created: ",cQ="Asia/Rangoon (390)",cX="EST",cY="America/Caracas (-270)",dn="en",dm="Asia/Tehran",dq="Portugal",dp="Asia/Kathmandu (345)",ds="Pacific/Marquesas (-570)",dr="AET (600)",du="Trial Access",dt="Australia/Eucla",dl="Etc/GMT+4 (-240)",dk="Enterprise",dV="Asia/Kabul",dW="Login name:",dX="something",dY="Etc/GMT+10",dR="Binnenschiffer DE",dS="CNT",dT="track.admin.account.AccountGroupBox",dU="Hungarian hu",dP="Last name:",dQ="usradm",m="Language:",k="oemNamesAuthorized",j="Australia/Eucla (525)",h="Australia/Lord_Howe (630)",g="tooltip",f="Login:",d="Asia/Tokyo (540)",c="Etc/GMT+9 (-540)",b="Etc/GMT+7",a="Australia/Perth (480)",z="Pacific/Auckland (720)",A="PST (-480)",x="Mr.",y="is a new name",D="<br/>Tracks: ",E="male",B="Pacific/Chatham (765)",C="Etc/GMT-12 (720)",G="Etc/GMT+7 (-420)",H="German Austria de_AT",cC="CNT (-210)",cw="GPS-ZIP DE",cJ="Etc/GMT-14",cF="Etc/GMT+2",cl="Etc/GMT+3 (-180)",cj="Invalid loginName '%1', example 'mueller' (at least 5 chars)",T="Basic",cm="PST",be="Australia/Perth",bd="Etc/GMT-13 (780)",bQ="Invalid end date '%1', example '2009-09-28'",bR="Asia/Kabul (270)",bS="Asia/Rangoon",bT="/",bU="Asia/Kathmandu",bV="_",bW="Etc/GMT-11",bX="ACT (570)",bO="Portugal (0)",bP="English en",ck="Europe/Berlin (60)",cI="German de_DE",cH="de_AT",cG="Mrs.",cN="Australia/Lord_Howe",cM="Europe/Athens (120)",cL="Europe/Zurich",cK="Jetski AT",cE="Asia/Tokyo",cD="female",F="Pacific/Marquesas",bi="EST (-300)",bh="de_CH",cv="Active:",bt="Asia/Tehran (210)",cB="Etc/GMT-3 (180)",cA="VST",cz="Etc/GMT+2 (-120)",S="German Switzerland de_CH",cO="<br/>Last Position: ";
qx.Class.define(dT,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(ek){qx.core.Object.call(this);
this.userAdminWindow=ek;
this.trackGui=this.userAdminWindow.trackGui;
this.currAccountTO=null;
this.__tN=null;
this.programmaticSetSelected=false;
this.tabIndex=100;
},members:{create:function(){this.groupBox=new qx.ui.groupbox.GroupBox(this.trc(Q,dd));
var eK=new qx.ui.layout.Grid(10,2);
this.groupBox.setLayout(eK);
var ev=240;
var ew=new qx.ui.basic.Label(this.trc(dD,dW));
var eB=new qx.ui.basic.Label(this.trc(dD,f));
var eD=new qx.ui.basic.Label(ee);
var eC=new qx.ui.basic.Label(this.trc(dD,N));
var el=new qx.ui.basic.Label(this.trc(dD,eb));
var et=new qx.ui.basic.Label(this.trc(dD,bz));
var eI=new qx.ui.basic.Label(this.trc(dD,cy));
var eH=new qx.ui.basic.Label(this.trc(dD,J));
var eG=new qx.ui.basic.Label(this.trc(dD,o));
var er=new qx.ui.basic.Label(this.trc(dD,dP));
var em=new qx.ui.basic.Label(this.trc(dD,ed));
var en=new qx.ui.basic.Label(this.trc(dD,ef));
var es=new qx.ui.basic.Label(this.trc(dD,bb));
var eo=new qx.ui.basic.Label(this.trc(dD,m));
var eJ=new qx.ui.basic.Label(this.trc(dD,v));
var eA=new qx.ui.basic.Label(this.trc(dD,bF));
var eF=new qx.ui.basic.Label(this.trc(dD,cv));
var ep=0;
this.groupBox.add(ew,{row:ep++,column:0});
this.groupBox.add(eB,{row:ep++,column:0});
this.groupBox.add(eD,{row:ep++,column:0});
this.groupBox.add(eC,{row:ep++,column:0});
this.groupBox.add(el,{row:ep++,column:0});
this.groupBox.add(et,{row:ep++,column:0});
this.groupBox.add(eI,{row:ep++,column:0});
this.groupBox.add(eH,{row:ep++,column:0});
this.groupBox.add(eG,{row:ep++,column:0});
this.groupBox.add(er,{row:ep++,column:0});
this.groupBox.add(em,{row:ep++,column:0});
this.groupBox.add(en,{row:ep++,column:0});
this.groupBox.add(es,{row:ep++,column:0});
this.groupBox.add(eo,{row:ep++,column:0});
this.groupBox.add(eJ,{row:ep++,column:0});
this.groupBox.add(eA,{row:ep++,column:0});
this.groupBox.add(eF,{row:ep++,column:0});
this.__tO=new qx.ui.form.SelectBox();
this.__tO.setWidth(ev);
this.__tO.setTabIndex(this.tabIndex++);
this.onLoginNames([]);
this.__tP=new qx.ui.form.TextField();
this.__tP.setTabIndex(this.tabIndex++);
this.__tQ=new qx.ui.basic.Label(dC);
this.__tQ.setTextColor(cs);
this.__tR=new qx.ui.form.SelectBox();
this.__tR.setTabIndex(this.tabIndex++);
var ex=this.trackGui.getMyAccountTO();
var eq=ex.getAccountPropertyStr(k,dC);

if(eq.indexOf(dw)!=-1)this.__tR.add(new qx.ui.form.ListItem(this.trc(dE,dw),null,dw));

if(eq.indexOf(ci)!=-1)this.__tR.add(new qx.ui.form.ListItem(this.trc(dE,ci),null,ci));

if(eq.indexOf(ch)!=-1)this.__tR.add(new qx.ui.form.ListItem(this.trc(dE,ch),null,ch));

if(eq.indexOf(dI)!=-1)this.__tR.add(new qx.ui.form.ListItem(this.trc(dE,u),null,dI));

if(eq.indexOf(dv)!=-1)this.__tR.add(new qx.ui.form.ListItem(this.trc(dE,dv),null,dv));

if(eq.indexOf(cf)!=-1)this.__tR.add(new qx.ui.form.ListItem(this.trc(dE,bx),null,cf));

if(eq.indexOf(dM)!=-1)this.__tR.add(new qx.ui.form.ListItem(this.trc(dE,cw),null,dM));

if(eq.indexOf(bY)!=-1)this.__tR.add(new qx.ui.form.ListItem(this.trc(dE,da),null,bY));

if(eq.indexOf(cg)!=-1)this.__tR.add(new qx.ui.form.ListItem(this.trc(dE,dR),null,cg));

if(eq.indexOf(dL)!=-1)this.__tR.add(new qx.ui.form.ListItem(this.trc(dE,Y),null,dL));

if(eq.indexOf(dH)!=-1)this.__tR.add(new qx.ui.form.ListItem(this.trc(dE,w),null,dH));

if(eq.indexOf(dF)!=-1)this.__tR.add(new qx.ui.form.ListItem(this.trc(dE,bc),null,dF));

if(eq.indexOf(cb)!=-1)this.__tR.add(new qx.ui.form.ListItem(this.trc(dE,cK),null,cb));

if(eq.indexOf(ce)!=-1)this.__tR.add(new qx.ui.form.ListItem(this.trc(dE,dh),null,ce));

if(eq.indexOf(dG)!=-1)this.__tR.add(new qx.ui.form.ListItem(this.trc(dE,bC),null,dG));

if(eq.indexOf(dy)!=-1)this.__tR.add(new qx.ui.form.ListItem(this.trc(dE,dy),null,dy));

if(eq.indexOf(dz)!=-1)this.__tR.add(new qx.ui.form.ListItem(this.trc(dE,dz),null,dz));
this.__tS=new qx.ui.form.SelectBox();
this.__tS.setTabIndex(this.tabIndex++);
this.__tT=new qx.ui.form.ListItem(this.trc(dE,du),null,net.watchee.PermissionTemplateTO.PERMISSION_GPSvision_TrialAccess);
this.__tS.add(this.__tT);
this.__tS.add(new qx.ui.form.ListItem(this.trc(dE,T),null,net.watchee.PermissionTemplateTO.PERMISSION_GPSvision_Basic));
this.__tS.add(new qx.ui.form.ListItem(this.trc(dE,bB),null,net.watchee.PermissionTemplateTO.PERMISSION_GPSvision_Comfort));
this.__tS.add(new qx.ui.form.ListItem(this.trc(dE,cS),null,net.watchee.PermissionTemplateTO.PERMISSION_GPSvision_Professional));
this.__tS.add(new qx.ui.form.ListItem(this.trc(dE,dk),null,net.watchee.PermissionTemplateTO.PERMISSION_GPSvision_Enterprise));
this.__tS.add(new qx.ui.form.ListItem(this.trc(dE,bN),null,net.watchee.PermissionTemplateTO.PERMISSION_SkipperInAppPurchase));
this.__tN=new qx.ui.form.Spinner(0,60,1000);
this.__tN.setTabIndex(this.tabIndex++);
this.__tU=new qx.ui.form.TextField();
this.__tU.setTabIndex(this.tabIndex++);
this.__tV=new qx.ui.form.SelectBox();
this.__tV.setTabIndex(this.tabIndex++);
this.__tV.add(new qx.ui.form.ListItem(this.trc(dE,x),null,E));
this.__tV.add(new qx.ui.form.ListItem(this.trc(dE,cG),null,cD));
this.__tW=new qx.ui.form.TextField();
this.__tW.setTabIndex(this.tabIndex++);
this.__tX=new qx.ui.form.TextField();
this.__tX.setTabIndex(this.tabIndex++);
this.__tY=new qx.ui.form.TextField();
this.__tY.setTabIndex(this.tabIndex++);
this.__ua=new qx.ui.form.TextField();
this.__ua.setTabIndex(this.tabIndex++);
this.__ub=new qx.ui.form.PasswordField();
this.__ub.setTabIndex(this.tabIndex++);
this.__uc=new qx.ui.form.SelectBox();
this.__uc.setTabIndex(this.tabIndex++);
this.__uc.add(new qx.ui.form.ListItem(this.trc(dE,cI),null,dN));
this.__uc.add(new qx.ui.form.ListItem(this.trc(dE,S),null,bh));
this.__uc.add(new qx.ui.form.ListItem(this.trc(dE,H),null,cH));
this.__uc.add(new qx.ui.form.ListItem(this.trc(dE,dU),null,cW));
this.__uc.add(new qx.ui.form.ListItem(this.trc(dE,eg),null,db));
this.__uc.add(new qx.ui.form.ListItem(this.trc(dE,bP),null,dn));
this.__ud=new qx.ui.form.SelectBox();
this.__ud.setTabIndex(this.tabIndex++);
this.__ud.add(new qx.ui.form.ListItem(ck,null,bk));
this.__ud.add(new qx.ui.form.ListItem(di,null,bH));
this.__ud.add(new qx.ui.form.ListItem(ej,null,cL));
this.__ud.add(new qx.ui.form.ListItem(bL,null,W));
this.__ud.add(new qx.ui.form.ListItem(bA,null,cp));
this.__ud.add(new qx.ui.form.ListItem(dg,null,dY));
this.__ud.add(new qx.ui.form.ListItem(ds,null,F));
this.__ud.add(new qx.ui.form.ListItem(c,null,eh));
this.__ud.add(new qx.ui.form.ListItem(A,null,cm));
this.__ud.add(new qx.ui.form.ListItem(G,null,b));
this.__ud.add(new qx.ui.form.ListItem(s,null,ei));
this.__ud.add(new qx.ui.form.ListItem(bi,null,cX));
this.__ud.add(new qx.ui.form.ListItem(cY,null,bq));
this.__ud.add(new qx.ui.form.ListItem(dl,null,cq));
this.__ud.add(new qx.ui.form.ListItem(ec,null,U));
this.__ud.add(new qx.ui.form.ListItem(cC,null,dS));
this.__ud.add(new qx.ui.form.ListItem(cl,null,bD));
this.__ud.add(new qx.ui.form.ListItem(cz,null,cF));
this.__ud.add(new qx.ui.form.ListItem(cV,null,dj));
this.__ud.add(new qx.ui.form.ListItem(bG,null,I));
this.__ud.add(new qx.ui.form.ListItem(bO,null,dq));
this.__ud.add(new qx.ui.form.ListItem(bj,null,P));
this.__ud.add(new qx.ui.form.ListItem(cM,null,bK));
this.__ud.add(new qx.ui.form.ListItem(cB,null,bs));
this.__ud.add(new qx.ui.form.ListItem(X,null,bo));
this.__ud.add(new qx.ui.form.ListItem(bf,null,p));
this.__ud.add(new qx.ui.form.ListItem(bt,null,dm));
this.__ud.add(new qx.ui.form.ListItem(df,null,bg));
this.__ud.add(new qx.ui.form.ListItem(bR,null,dV));
this.__ud.add(new qx.ui.form.ListItem(ba,null,t));
this.__ud.add(new qx.ui.form.ListItem(cR,null,bv));
this.__ud.add(new qx.ui.form.ListItem(dp,null,bU));
this.__ud.add(new qx.ui.form.ListItem(bl,null,r));
this.__ud.add(new qx.ui.form.ListItem(cQ,null,bS));
this.__ud.add(new qx.ui.form.ListItem(O,null,cA));
this.__ud.add(new qx.ui.form.ListItem(a,null,be));
this.__ud.add(new qx.ui.form.ListItem(bJ,null,bn));
this.__ud.add(new qx.ui.form.ListItem(j,null,dt));
this.__ud.add(new qx.ui.form.ListItem(d,null,cE));
this.__ud.add(new qx.ui.form.ListItem(cu,null,bE));
this.__ud.add(new qx.ui.form.ListItem(bX,null,de));
this.__ud.add(new qx.ui.form.ListItem(dr,null,dc));
this.__ud.add(new qx.ui.form.ListItem(h,null,cN));
this.__ud.add(new qx.ui.form.ListItem(q,null,bW));
this.__ud.add(new qx.ui.form.ListItem(cx,null,cr));
this.__ud.add(new qx.ui.form.ListItem(C,null,L));
this.__ud.add(new qx.ui.form.ListItem(z,null,co));
this.__ud.add(new qx.ui.form.ListItem(B,null,bI));
this.__ud.add(new qx.ui.form.ListItem(bd,null,ea));
this.__ud.add(new qx.ui.form.ListItem(by,null,cJ));
this.__ue=new qx.ui.form.TextField();
this.__ue.setTabIndex(this.tabIndex++);
this.__ue.setToolTipText(this.trc(g,cU));
this.__uf=new qx.ui.form.CheckBox();
this.__uf.setTabIndex(this.tabIndex++);
this.__ug=new qx.ui.form.Button(this.trc(V,bM));
var eE=new qx.ui.container.Composite(new qx.ui.layout.HBox());
eE.add(this.__uf);
eE.add(this.__ug);
var ep=0;
this.groupBox.add(this.__tO,{row:ep++,column:1});
this.groupBox.add(this.__tP,{row:ep++,column:1});
this.groupBox.add(this.__tQ,{row:ep++,column:1});
this.groupBox.add(this.__tR,{row:ep++,column:1});
this.groupBox.add(this.__tS,{row:ep++,column:1});
this.groupBox.add(this.__tN,{row:ep++,column:1});
this.groupBox.add(this.__tU,{row:ep++,column:1});
this.groupBox.add(this.__tV,{row:ep++,column:1});
this.groupBox.add(this.__tW,{row:ep++,column:1});
this.groupBox.add(this.__tX,{row:ep++,column:1});
this.groupBox.add(this.__tY,{row:ep++,column:1});
this.groupBox.add(this.__ua,{row:ep++,column:1});
this.groupBox.add(this.__ub,{row:ep++,column:1});
this.groupBox.add(this.__uc,{row:ep++,column:1});
this.groupBox.add(this.__ud,{row:ep++,column:1});
this.groupBox.add(this.__ue,{row:ep++,column:1});
this.groupBox.add(eE,{row:ep++,column:1});
this.__ug.addListener(cc,function(e){if(this.currAccountTO!=null)this.trackGui.infoMsgBox(cP+this.currAccountTO.getCreationDateStr()+M+org.xmlBlaster.util.getDateStrFromIsoDateStr(this.currAccountTO.getLastLoginWebStr())+dx+org.xmlBlaster.util.getTimeStrFromIsoDateStr(this.currAccountTO.getLastLoginWebStr())+D+this.currAccountTO.getNumberOfTracks()+cO+org.xmlBlaster.util.getDateStrFromIsoDateStr(this.currAccountTO.getLastPositionTs()));
},this);
var eu=this.userAdminWindow.showCompanyGroupBox();

if(eu){var ey=this.userAdminWindow.getCompanyGroupBox();
var ez=ey.getCompany();
}else{var ez=dX;
this.companyChanged(ez);
}this.__tO.addListener(cd,function(e){var eL=(e.getData().length==0)?null:e.getData()[0];
this.__ui(eL);
},this);
this.__tP.addListener(bm,function(e){var eN=e.getData();
var eM=this.__tP.getValue();

if(eM.length<=2){this.__tQ.setValue(dC);
return;
}var eO=this.__um(eM);

if(eO.length>1){this.__tQ.setValue(this.trc(dA,ct,eO.length));
this.onChangedAccountTO(null,false);
this.userAdminWindow.resetDeviceMappingGui();
}else if(eO.length==1){this.__tQ.setValue(this.trc(dA,dJ,eO[0]));

if(eM==eO[0])this.userAdminWindow.sendGetAccount(eO[0]);
}else{this.__tQ.setValue(this.trc(dA,y));
this.userAdminWindow.resetDeviceMappingGui();
}},this);
this.__tS.addListener(cd,function(e){if(this.programmaticSetSelected)return;
var eP=(e.getData().length==0)?null:e.getData()[0];
this.__uh(eP);
},this);
this.searchButton=new qx.ui.form.Button(this.trc(br,n));
this.groupBox.add(this.searchButton,{row:ep++,column:1});
this.searchButton.addListener(cc,function(e){this.userAdminWindow.openSearchAccountWindow();
},this);
return this.groupBox;
},__uh:function(eQ){var eQ=eQ||null;

if(eQ==null)return;

if(eQ.getModel()==net.watchee.PermissionTemplateTO.PERMISSION_GPSvision_TrialAccess)this.__ul();
else this.__ue.setValue(dC);
if(eQ.getModel()==net.watchee.PermissionTemplateTO.PERMISSION_GPSvision_Basic){this.__tN.setValue(30);
}else if(eQ.getModel()==net.watchee.PermissionTemplateTO.PERMISSION_GPSvision_Comfort){this.__tN.setValue(30);
}else if(eQ.getModel()==net.watchee.PermissionTemplateTO.PERMISSION_GPSvision_Enterprise){this.__tN.setValue(60);
}else if(eQ.getModel()==net.watchee.PermissionTemplateTO.PERMISSION_GPSvision_Professional){this.__tN.setValue(60);
}else if(eQ.getModel()==net.watchee.PermissionTemplateTO.PERMISSION_GPSvision_TrialAccess){this.__tN.setValue(10);
}else if(eQ.getModel()==net.watchee.PermissionTemplateTO.PERMISSION_SkipperInAppPurchase){this.__tN.setValue(10);
}else{this.__tN.setValue(0);
}},__ui:function(eR){if(eR==null)return ;
var eS=eR.getModel();

if(eS==dK){this.onChangedAccountTO(null);
return;
}this.userAdminWindow.sendGetAccount(eS);
},onChangedAccountTO:function(eT,eU){var eT=eT||null;
this.programmaticSetSelected=true;
this.currAccountTO=eT;
var eU=org.xmlBlaster.util.toBoolean(eU,true);

if(eT==null||eT.getLoginName()==ca){if(eU){this.__tP.setValue(dC);
}this.__tP.setEnabled(true);

if(eU){this.__tQ.setValue(dC);
}this.__tR.resetSelection();
this.__tS.resetSelection();
this.__uh(this.__tT);
this.__tU.setValue(dC);
this.__tV.resetSelection();
this.__tW.setValue(dC);
this.__tX.setValue(dC);
this.__tY.setValue(dC);
this.__ua.setValue(cn);
this.__ub.setValue(dC);
this.__uc.resetSelection();
this.__ud.resetSelection();
this.__ue.setValue(dC);
this.__ul();
this.__uf.setValue(true);
this.__ug.setEnabled(false);
this.userAdminWindow.deviceGroupBox.accountChanged(dC);
}else{this.__tP.setValue(eT.getLoginName());
if(eU){this.__tQ.setValue(dC);
}var eV=track.util.GuiUtils.findListItemByModel(this.__tR,eT.getOemName());

if(eV!=null)this.__tR.setSelection([eV]);
else this.__tR.resetSelection();
var eV=this.__un(eT.getPermissionTemplateStr());

if(eV!=null)this.__tS.setSelection([eV]);
else this.__tS.resetSelection();
this.__tN.setValue(eT.getMaxMonthlySms());
this.__tU.setValue(eT.getAlias());
this.__tV.resetSelection();
this.__tW.setValue(eT.getFirstName());
this.__tX.setValue(eT.getLastName());
this.__tY.setValue(eT.getEmail());
this.__ua.setValue(eT.getPhoneNumber());
this.__ub.setValue(eT.getPassword());
this.__uj(eT.getLanguage());
this.__uk(eT.getTimezone());
this.__ue.setValue(eT.getEndDateStr());
this.__uf.setValue(eT.isActive());
this.userAdminWindow.deviceGroupBox.accountChanged(eT.getLoginName());
this.__tQ.setValue(this.trc(dA,dJ,eT.getLoginName()));
this.__ug.setEnabled(true);
}this.programmaticSetSelected=false;
},__uj:function(eW){var eX=this.findListItem(this.__uc,eW);

if(eX!=null)this.__uc.setSelection([eX]);
},__uk:function(eY){var fa=this.findListItem(this.__ud,eY);

if(fa!=null)this.__ud.setSelection([fa]);
},findListItem:function(fb,fc){if(fc==null)return null;
var fd=fb.getChildren();

for(var i=0,l=fd.length;i<l;i++){var fe=fd[i];

if(fe!=null&&fe.getModel()==fc)return fe;
}return null;
},__ul:function(){var fg=org.xmlBlaster.util.getCurrentGmtDate(null);
var ff=fg.getTime()+(16*24*60*60*1000);
var fi=org.xmlBlaster.util.getCurrentGmtDate(null);
fi.setTime(ff);
var fh=org.xmlBlaster.util.getDateStr(fi);
this.__ue.setValue(fh);
},fillAccountTOFromGui:function(){if(this.validateGuiEntries()==false)return null;
var fj=new net.watchee.AccountTO(this.trackGui.watchee,this.getLoginName());
fj.setPermissionTemplateStr(this.__tS.getSelection()[0].getModel());
fj.setMaxMonthlySms(this.__tN.getValue());
fj.setOemName(this.__tR.getSelection()[0].getModel());
fj.setAlias(this.__tU.getValue());
fj.setGender(this.__tV.getSelection()[0].getModel());
fj.setFirstName(this.__tW.getValue());
fj.setLastName(this.__tX.getValue());
fj.setEmail(this.getEmail());
fj.setPhoneNumber(this.__ua.getValue());
fj.setPassword(this.getPassword());
fj.setLanguage(this.__uc.getSelection()[0].getModel());
fj.setTimezone(this.__ud.getSelection()[0].getModel());
fj.setEndDateStr(this.getEndDate());
fj.setActive(this.__uf.getValue());
return fj;
},onLoginNames:function(fk){var fk=fk||[];
this.__tO.removeAll();
this.__tO.add(new qx.ui.form.ListItem(this.trc(dE,ca),null,dK));

for(var i=0,l=fk.length;i<l;i++){var fl=fk[i];
this.__tO.add(new qx.ui.form.ListItem(fl,null,fl));
}},onLoginNameAdded:function(fm){var fm=fm||null;

if(fm==null)return;
var fn=this.__oK(fm);

if(fn==null){this.__tO.add(new qx.ui.form.ListItem(fm,null,fm));
}},onLoginNameDeleted:function(fo){var fo=fo||null;

if(fo==null)return;
var fp=this.__oK(fo);

if(fp!=null){this.__tO.remove(fp);
}},__um:function(fq){if(fq==null)return null;
var fs=this.__tO.getChildren();
var fr=[];

for(var i=0,l=fs.length;i<l;i++){var ft=fs[i];

if(ft!=null&&ft.getModel().indexOf(fq)==0){fr.push(ft.getModel());
}}return fr;
},__oK:function(fu){if(fu==null)return null;
var fv=this.__tO.getChildren();

for(var i=0,l=fv.length;i<l;i++){var fw=fv[i];

if(fw!=null&&fw.getModel()==fu)return fw;
}return null;
},__un:function(fx){if(fx==null)return null;
var fy=this.__tS.getChildren();

for(var i=0,l=fy.length;i<l;i++){var fz=fy[i];

if(fz!=null&&fz.getModel()==fx)return fz;
}return null;
},companyChanged:function(fA){if(fA==R){this.onLoginNames([]);
}else{this.onLoginNames([]);
}},getEndDate:function(){var fB=org.xmlBlaster.util.trim(this.__ue.getValue());

if(fB==null||fB.length==0){return fB;
}
if(fB.indexOf(dO)!=4||fB.length!=10){this.trackGui.errorMsgBox(this.trc(dB,bQ,fB));
return null;
}return fB;
},getEmail:function(){var fC=org.xmlBlaster.util.trim(this.__tY.getValue());

if(fC==null||fC.length<5||fC.indexOf(bp)==-1||fC.indexOf(K)==-1||fC.indexOf(dx)!=-1){this.trackGui.errorMsgBox(this.trc(dB,bu,fC));
return null;
}return fC;
},getLoginName:function(){var fD=org.xmlBlaster.util.trim(this.__tP.getValue());
var fE=(this.trackGui.getMyLoginName()==dQ)?4:5;
if(fD==null||fD.length<fE||fD.indexOf(cT)!=-1||fD.indexOf(bT)!=-1||fD.indexOf(bV)==0||fD.indexOf(dx)!=-1){this.trackGui.errorMsgBox(this.trc(dB,cj,fD));
return null;
}return fD.toLowerCase();
},getPassword:function(){var fF=org.xmlBlaster.util.trim(this.__ub.getValue());

if(fF==null||fF.length<4){this.trackGui.errorMsgBox(this.trc(dB,bw,fF));
return null;
}return fF;
},validateGuiEntries:function(){if(this.getEndDate()==null)return false;

if(this.getLoginName()==null)return false;

if(this.getEmail()==null)return false;

if(this.getPassword()==null)return false;
return true;
},destruct:function(){this._disposeFields();
this._disposeObjects();
}}});
})();
(function(){var r="",q="label name",p="errorMsgBox",o=",",n="$WP+COMMTYPE=",m="212.023.097.002",k="t-mobile",j="193.254.160.001",h="gprs",g="123456",bK="changeSelection",bJ="internet.eplus.de",bI="139.007.030.125",bH="+491710760000",bG="tm",bF="internet.t-mobile",bE="88.198.51.40",bD="+491722270333",bC="event.vodafone.de",bB="eplus",y="internet",z="0000",w="+491776022950",x="groupbox title",u="+491760000443",v="Device",s="$WP+TRACK=",t="+",G="$WP+REBOOT=",H="SPT10 - T-Mobile D1",bc="iPhone",X=",5,,,,,,,",bk=",4,",bf="Invalid tracker phone number '%1'",bw="changeValue",bq=",0,",P="Invalid tracker phone number '%1', example '+49157734054'",bA="TK5000",by="CT100/CT300 - O2",bx="Password:",N="IMEI:",T="execute",V="CT100/CT300 - Vodafone D2",ba="$WP+RESET=",bd="<b>Missing command to send to tracker</b>",bg="Command <br /><i>%1</i><br /> is sent to %2",bm="188.40.16.133",bs="SoftwayVehicle",A="Android",B="CT100/CT300 - E-PLUS",R="SPT10/CT100/CT300 - Reset",bj="Invalid tracker password: %1",bi="SPT10/CT100/CT300 - Reboot",bh="button title",bo="TK102",bn=",1,,,,,,0,",be="adminCommand",bl="Type:",a="SoftwayPersonal",br="SPT10 - O2",C="CT100",D="Invalid IMEI/UDID (%1 digits expected): %2",Y="188.40.42.185",b="SPT10 - E-PLUS",f="J2ME/Nokia/SonyEricsson/Blackberry",L="SPT10/CT100/CT300 - Tracking Rate",E="Info:",F="track.admin.account.DeviceGroupBox",J="iPad",bb="Tracker command:",bu="SPT10 - Vodafone D2",bt=",9,240,500,0,1,4,30",U="+49",bv="sms",O="SPT10/CT100/CT300 - Switch off GPRS, SMS only",bp="infoMsgBox",I="Windows-CE Phones",K=",,",d="Add a device:",W="SPT10/CT100/CT300 - Switch off GPRS, USB only",Q="Phonenumber:",bz="Send command to device",S="Configure Device",c="TK105",M="CT100/CT300 - T-Mobile D1";
qx.Class.define(F,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(bL){qx.core.Object.call(this);
this.userAdminWindow=bL;
this.trackGui=this.userAdminWindow.trackGui;
this.__uo=null;
this.tabIndex=200;
},members:{create:function(){this.groupBox=new qx.ui.groupbox.GroupBox(this.trc(x,v));
var bU=240;
var bY=new qx.ui.layout.Grid(5,2);
this.groupBox.setLayout(bY);
var ch=new qx.ui.basic.Label(this.trc(q,d));
var bS=new qx.ui.basic.Label(this.trc(q,bl));
var cj=new qx.ui.basic.Label(this.trc(q,N));
var ce=new qx.ui.basic.Label(this.trc(q,bx));
var bM=new qx.ui.basic.Label(this.trc(q,Q));
var ci=new qx.ui.basic.Label(this.trc(q,E));
var bR=0;
this.groupBox.add(ch,{row:bR++,column:0});
this.groupBox.add(bS,{row:bR++,column:0});
this.groupBox.add(cj,{row:bR++,column:0});
this.groupBox.add(ce,{row:bR++,column:0});
this.groupBox.add(bM,{row:bR++,column:0});
this.groupBox.add(ci,{row:bR++,column:0});
this.__up=new qx.ui.form.CheckBox();
this.__up.setTabIndex(this.tabIndex++);
this.__uq=new qx.ui.form.SelectBox();
this.__uq.setTabIndex(this.tabIndex++);
this.__uq.setWidth(bU);
this.__uq.add(new qx.ui.form.ListItem(bo,null,18));
this.__uq.add(new qx.ui.form.ListItem(c,null,19));
this.__uq.add(new qx.ui.form.ListItem(bA,null,12));
this.__uq.add(new qx.ui.form.ListItem(C,null,14));
this.__uq.add(new qx.ui.form.ListItem(A,null,6));
this.__uq.add(new qx.ui.form.ListItem(bc,null,7));
this.__uq.add(new qx.ui.form.ListItem(J,null,5));
this.__uq.add(new qx.ui.form.ListItem(f,null,8));
this.__uq.add(new qx.ui.form.ListItem(I,null,9));
this.__uq.add(new qx.ui.form.ListItem(a,null,21));
this.__uq.add(new qx.ui.form.ListItem(bs,null,22));
this.__ur=new qx.ui.form.TextField();
this.__ur.setTabIndex(this.tabIndex++);
this.__us=new qx.ui.form.TextField();
this.__us.setTabIndex(this.tabIndex++);
this.__ut=new qx.ui.form.TextField();
this.__ut.setTabIndex(this.tabIndex++);
this.__uu=new qx.ui.form.TextField();
this.__uu.setTabIndex(this.tabIndex++);
this.__uq.addListener(bK,function(e){var ck=(e.getData().length==0)?null:e.getData()[0];

if(this.__ur.getValue()==r){if(ck!=null&&(ck.getModel()==12||ck.getModel()==14)){this.__us.setValue(z);
}else{this.__us.setValue(g);
}}},this);
var bR=0;
this.groupBox.add(this.__up,{row:bR++,column:1});
this.groupBox.add(this.__uq,{row:bR++,column:1});
this.groupBox.add(this.__ur,{row:bR++,column:1});
this.groupBox.add(this.__us,{row:bR++,column:1});
this.groupBox.add(this.__ut,{row:bR++,column:1});
this.groupBox.add(this.__uu,{row:bR++,column:1});
this.__up.addListener(bw,function(e){var cl=e.getData();
this.__ur.setEnabled(cl);
},this);
this.__up.setValue(true);
this.tabIndex=400;
this.commandGroupBox=new qx.ui.groupbox.GroupBox(this.trc(x,S));
this.commandGroupBox.setLayout(new qx.ui.layout.VBox());
this.groupBox.add(this.commandGroupBox,{row:bR++,column:0,colSpan:2});
this.__uo=new qx.ui.form.SelectBox();
this.__uo.setTabIndex(this.tabIndex++);
this.__uo.setWidth(bU);
var cc=z;
var cf=bE;
var bX={label:b,smsBase:w,apn:bJ,user:bB,pw:h,dns:m,serverPort:7912};
var bQ={label:H,smsBase:bH,apn:bF,user:k,pw:bG,dns:j,serverPort:7912};
var bO={label:bu,smsBase:bD,apn:bC,user:r,pw:r,dns:bI,serverPort:7912};
var bW={label:br,smsBase:u,apn:y,user:r,pw:r,dns:cf,serverPort:7912};
var ca={label:B,smsBase:w,apn:bJ,user:bB,pw:h,dns:m,serverPort:7914};
var cb={label:M,smsBase:bH,apn:bF,user:k,pw:bG,dns:j,serverPort:7914};
var cd={label:V,smsBase:bD,apn:bC,user:r,pw:r,dns:bI,serverPort:7914};
var bT={label:by,smsBase:u,apn:y,user:r,pw:r,dns:cf,serverPort:7914};
var bP=[bX,bQ,bO,bW,ca,cb,cd,bT];
var cg=r;

if(isGpsOem){cg=Y;
}else if(isGpsVision){cg=bm;
}else if(isWatchee){cg=bE;
}else{cg=location.host;
}
for(var i=0;i<bP.length;i++){var bV=bP[i];
this.__uo.add(new qx.ui.form.ListItem(bV.label,null,n+cc+bk+bV.smsBase+K+bV.apn+o+bV.user+o+bV.pw+o+cg+o+bV.serverPort+bq+bV.dns));
}this.__uo.add(new qx.ui.form.ListItem(W,null,n+cc+X));
this.__uo.add(new qx.ui.form.ListItem(O,null,n+cc+bn));
this.__uo.add(new qx.ui.form.ListItem(L,null,s+cc+bt));
this.__uo.add(new qx.ui.form.ListItem(R,null,ba+cc));
this.__uo.add(new qx.ui.form.ListItem(bi,null,G+cc));
this.__uo.addListener(bK,function(e){var cn=(e.getData().length==0)?null:e.getData()[0];
var cm=cn.getModel();
this.__uv.setValue(cm);
},this);
this.commandGroupBox.add(this.__uo);
var bN=new qx.ui.basic.Label(this.trc(q,bb));
this.commandGroupBox.add(bN);
this.__uv=new qx.ui.form.TextField();
this.__uv.setTabIndex(this.tabIndex++);
this.commandGroupBox.add(this.__uv);
this.sendCommandButton=new qx.ui.form.Button(this.trc(bh,bz));
this.sendCommandButton.setTabIndex(this.tabIndex++);
this.commandGroupBox.add(this.sendCommandButton);
this.sendCommandButton.addListener(T,function(e){this.sendCommandToTracker();
},this);
this.onChangedDeviceMappingTO(null);
return this.groupBox;
},sendCommandToTracker:function(){var co=this.userAdminWindow.getAccountGroupBox().getLoginName();
var cs=be;
var cp=this.getCommandFromGui();
var cq=bv;
var cr=true;

if(co==null||co.length<1){return ;
}
if(cp==null||cp.length<1){this.trackGui.errorMsgBox(this.trc(p,bd));
return;
}this.trackGui.sendRawDeviceCommand(co,cs,cp,cq,cr);
this.trackGui.infoMsgBox(this.trc(bp,bg,cp,co));
},doAddDevice:function(){return this.__up.getValue();
},onChangedDeviceMappingTO:function(ct,cu){var ct=ct||null;
var cu=cu||g;

if(ct==null){this.__up.setValue(true);
this.__uq.resetSelection();
this.__uo.resetSelection();
this.__ur.setValue(r);
this.__us.setValue(cu);
this.__ut.setValue(U);
this.__uu.setValue(r);
}else{this.__up.setValue(true);
var cv=this.__oK(ct.getPubSessionId());

if(cv!=null)this.__uq.setSelection([cv]);
else this.__uq.resetSelection();
this.__ur.setValue(ct.getDeviceImei());
this.__us.setValue(ct.getHwPasswd());
this.__ut.setValue(ct.getHwPhoneNumber());
this.__uu.setValue(ct.getInfo());
}},getPubSessionIdFromGui:function(){var cx=this.__uq.getSelection()[0];

if(cx!=null){var cw=cx.getModel();
return cw;
}return 0;
},getCommandFromGui:function(){var cy=this.__uv.getValue();
return cy;
},fillDeviceMappingTOFromGui:function(cz){if(cz&&this.validateGuiEntries()==false)return null;
var cB=this.userAdminWindow.getAccountGroupBox().getLoginName();
var cA=new track.admin.account.DeviceMappingTO(this.trackGui.watchee);
cA.setLoginName(cB);
cA.setPubSessionId(this.getPubSessionIdFromGui());
cA.setDeviceImei(this.getImei());
cA.setHwPasswd(this.getHwPasswd());
cA.setHwPhoneNumber(this.getHwPhoneNumber());
cA.setInfo(this.__uu.getValue());
return cA;
},getImei:function(cC){var cC=org.xmlBlaster.util.toBoolean(cC,true);
var cD=org.xmlBlaster.util.trim(this.__ur.getValue());
var cE=(this.getPubSessionIdFromGui()==5||this.getPubSessionIdFromGui()==7)?40:15;

if(cD!=null&&cD.length==cE){return cD;
}
if(cC){this.trackGui.errorMsgBox(this.trc(p,D,cE,cD));
}return null;
},getHwPasswd:function(){var cF=org.xmlBlaster.util.trim(this.__us.getValue());

if(cF==null||cF.length<4){this.trackGui.errorMsgBox(this.trc(p,bj,cF));
return null;
}return cF;
},getHwPhoneNumber:function(){var cG=org.xmlBlaster.util.trim(this.__ut.getValue());

if(cG==null||cG.length<3){this.trackGui.errorMsgBox(this.trc(p,bf,cG));
return null;
}
if(!cG.indexOf(t)==0){this.trackGui.errorMsgBox(this.trc(p,P,cG));
return null;
}return cG;
},validateGuiEntries:function(){if(this.getImei()==null)return false;

if(this.getHwPasswd()==null)return false;

if(this.getHwPhoneNumber()==null)return false;
return true;
},__oK:function(cH){if(cH==null)return null;
var cI=this.__uq.getChildren();

for(var i=0,l=cI.length;i<l;i++){var cJ=cI[i];

if(cJ!=null&&cJ.getModel()==cH)return cJ;
}return null;
},accountChanged:function(cK){}},destruct:function(){this._disposeFields();
this._disposeObjects();
}});
})();
(function(){var m="",l="info",k="hwPasswd",j="deviceImei",i="pubSessionId",h="loginName",g="hwPhoneNumber",f="deviceMappingId",e="track.admin.account.DeviceMappingTO",d="DeviceMapping",a="creationTs",c="modifiedTs",b="accountId";
qx.Class.define(e,{extend:qx.core.Object,construct:function(n,o){qx.core.Object.call(this);
this.trackGui=n;

if(org.xmlBlaster.util.isDefined(o)){this.propertyCollection=o;
}else{this.propertyCollection=new net.watchee.PropertyCollection(d);
}this.gpsDataCached=null;
},members:{getDeviceMappingId:function(){return this.propertyCollection.getStr(f,m);
},getDeviceImei:function(){return this.propertyCollection.getStr(j,m);
},setDeviceImei:function(p){this.propertyCollection.addKeyValue(j,p);
},getPropertyCollection:function(){return this.propertyCollection;
},getCreationTs:function(){return this.propertyCollection.getStr(a,m);
},getModifiedTs:function(){return this.propertyCollection.getStr(c,m);
},getHwPasswd:function(){return this.propertyCollection.getStr(k,m);
},setHwPasswd:function(q){this.propertyCollection.addKeyValue(k,q);
},getHwPhoneNumber:function(){return this.propertyCollection.getStr(g,m);
},setHwPhoneNumber:function(r){this.propertyCollection.addKeyValue(g,r);
},getPubSessionId:function(){var s=this.propertyCollection.getStr(i,m);
return org.xmlBlaster.util.toNumber(s,0);
},setPubSessionId:function(t){this.propertyCollection.addKeyValue(i,t);
},getInfo:function(){return this.propertyCollection.getStr(l,m);
},setInfo:function(u){if(u==null||u.length<1)this.propertyCollection.remove(l);
else this.propertyCollection.addKeyValue(l,u);
},getAccountId:function(){return this.propertyCollection.getStr(b,m);
},getLoginName:function(){return this.propertyCollection.getStr(h,null);
},setLoginName:function(v){this.propertyCollection.addKeyValue(h,v);
},toXml:function(){return this.propertyCollection.toXml();
}},destruct:function(){this._disposeFields();
this._disposeObjects();
}});
})();
(function(){var m="",l="title",k="statusBar",j="columnId",h=", %1 filter is active!",g="deviceId",f="loginName",d="hwPhoneNumber",c=", %1 filter NOT active",b="label",bn="email",bm="-",bl="Meier",bk="+491754444469",bj="permissionTemplateName",bi="lastName",bh="endDate",bg="oemName",bf="011112222233339",be="track.admin.account.SearchAccountWindow",t="window title",u="Login",r="Email",s="Created",p="^",q=".*",n="22/userAdmin.png",o="Müller",z="getAccountDeviceImportantFields",A="Family name",J="Tracker",H="Get account search fields failed: %1 %2",R="müller@xy-company.com",M="Enter texts which must match appropriate column:",ba="errorMsgBox",W="OEM",D="meier@xy.z",bd="close",bc="demo",bb="alias",C="Click on row to load account.",F="Alias",G=", click on row of account to edit in other window.",I="Trackerphone",K="deviceEnum",N="keyup",T=", filter NOT active",Y="cellClick",v="Account Search",w="\n",E="AjaxAnimator",Q="+49",P=", filter is active!",O="Permission",V="End date",U="userSince",L="Get account list",S="hazel",a="IMEI",X="355556666677779",x=",";
var B=260;
var y=460;
qx.Class.define(be,{extend:track.util.WindowWithHelpIcon,construct:function(bo,bp){track.util.WindowWithHelpIcon.call(this);
this.trackGui=bo||null;
this.userAdminWindow=bp;
this.setResizable(true);
this.setCaption(this.trc(t,v));
this.setIcon(xbGetIcon(n));
this._table=null;
this._tableModel=null;
this._completeRowData=[];
this._filterTextFields=[];
this._useAndFilter=true;
this._DEFAULT_COL_WIDTH=[];
this.addListener(bd,function(e){this.clear();
},this);
},members:{getAdminWindowTop:function(){return B;
},getAdminWindowLeft:function(){return y;
},createWindow:function(){this._table=this.createTable();
this._toolBar=this.createControls();
this.add(this._toolBar);
this.add(this._table,{flex:1});
this.open();
return true;
},__qw:function(){var bq=[];
bq.push([S,bl,D,bf,Q]);
bq.push([bc,o,R,X,bk]);
return bq;
},createTable:function(){this._tableModel=new qx.ui.table.model.Filtered();
this._tableModel.setColumnIds([bg,f,bb,bi,bn,bj,U,bh,g,d,K]);
this._DEFAULT_COL_WIDTH=[80,200,100,100,200,140,100,100,120,120,70];
this._tableModel.setColumnNamesByIndex([W,u,F,this.trc(l,A),r,this.trc(l,O),this.trc(l,s),this.trc(l,V),a,this.trc(l,I),this.trc(l,J)]);
var br=this._tableModel.getColumnCount();
var bt=[];
bt=this.__qw();
this._tableModel.setData(bt);
var bs=this._table=new qx.ui.table.Table(this._tableModel);
bs.getSelectionModel().setSelectionMode(qx.ui.table.selection.Model.MULTIPLE_INTERVAL_SELECTION);
bs.addListener(Y,function(event){this._onRowClick(event.getRow());
},this);

for(var bu=0;bu<br;bu++)this._table.setColumnWidth(bu,this._DEFAULT_COL_WIDTH[bu]);
bs.setAdditionalStatusBarText(this.trc(m,G));
return bs;
},createControls:function(){var by=new qx.ui.container.Composite(new qx.ui.layout.VBox());
by.add(new qx.ui.basic.Label(this.trc(b,C)));
by.add(new qx.ui.basic.Label(this.trc(b,M)));
var bw=new qx.ui.container.Composite(new qx.ui.layout.HBox());
var bv=this._tableModel.getColumnCount();

for(var bz=0;bz<bv;bz++){var bx=this._tableModel.getColumnId(bz);
var bA=new qx.ui.form.TextField();
bA.setWidth(this._DEFAULT_COL_WIDTH[bz]);
bA.setUserData(j,bx);
bw.add(bA);
bA.addListener(N,function(event){var bC=event.getCurrentTarget();
var bB=bC.getUserData(j)==bn||bC.getUserData(j)==g||bC.getUserData(j)==d?false:true;
this._onFilterKeyEntered(bC.getUserData(j),bC.getValue(),bB);
},this);
this._filterTextFields[bx]=bA;
}by.add(bw);
return by;
},_onRowClick:function(bD){var bE=this._tableModel.getColumnIndexById(f);
var bF=this._tableModel.getValue(bE,bD);
this.userAdminWindow.sendGetAccount(bF);
},_onFilterKeyEntered:function(bG,bH,bI){var bT=false;

if(this._useAndFilter){var bJ=this._tableModel.getColumnCount();
var bM=false;

for(var bP=0;bP<bJ;bP++){var bG=this._tableModel.getColumnId(bP);
var bU=this._filterTextFields[bG];
var bH=bU.getValue()||m;

if(bH!=m){bM=true;
break;
}}
if(!bM){this._tableModel.setData(this._completeRowData);
this._table.setAdditionalStatusBarText(this.trc(k,T));
return;
}var bQ=[];

for(var bN=0;bN<this._completeRowData.length;bN++){var bS=this._completeRowData[bN];
var bV=true;

for(var bP=0;bP<bJ;bP++){var bR=bS[bP]||m;
var bG=this._tableModel.getColumnId(bP);
var bU=this._filterTextFields[bG];
var bL=bU.getValue()||m;

if(bL==m){continue;
}
if(bR.toLowerCase().indexOf(bL.toLowerCase())==-1){bV=false;
break;
}}
if(bV){bQ.push(bS);
}}this._tableModel.setData(bQ);
this._table.setAdditionalStatusBarText(this.trc(k,P));
return;
}if(bT){var bO=true;
var bW=bG;
this._tableModel.resetHiddenRows();

if(bH!=null&&bH!=m){if(bI){bH=p+bH;
this._tableModel.addNotRegex(bH,bW,bO);
}else{this._tableModel.addNotRegex(bH,bW,bO);
}this._table.setAdditionalStatusBarText(this.trc(k,h,bG));
}else{this._tableModel.addNotRegex(q,bW,bO);
this._table.setAdditionalStatusBarText(this.trc(k,c,bW));
}this._tableModel.applyFilters();
}else{if(bH==null||bH==m){this._tableModel.setData(this._completeRowData);
this._table.setAdditionalStatusBarText(this.trc(k,c,bG));
return;
}var bQ=[];
var bK=this._tableModel.getColumnIndexById(bG);

for(var i=0;i<this._completeRowData.length;i++){var bS=this._completeRowData[i];
var bR=bS[bK];

if(bR!=null&&bR.indexOf(bH)!=-1){bQ.push(bS);
}}this._tableModel.setData(bQ);
this._table.setAdditionalStatusBarText(this.trc(k,h,bG));
}},sendGetAccountDeviceImportantFields:function(){this.watchee=this.trackGui.watchee;

if(this.watchee==null)throw new Error("getAccountDeviceImportantFields with watchee is null");
var cb=org.xmlBlaster.util.PropTO;
var cc=this.trackGui.getRequestResponseDispatcher();
var cd=cb.VALUE_TASK_NAMED_GETACCOUNTDEVICEIMPORTANTFIELDS+bm+cc.getRequestIdNextVal();
var bY=new Array();
bY.push(new cb(cb.KEY_SERVICENAME,cb.VALUE_SERVICE_ACCOUNT));
bY.push(new cb(cb.KEY_TASK,cb.VALUE_TASK_NAMED_GETACCOUNTDEVICEIMPORTANTFIELDS));
bY.push(new cb(cb.KEY_DATA,m));
bY.push(new cb(cb.KEY_BOUNCE,cd));
var bX=new org.xmlBlaster.util.ServiceTO(bY);
var ca=new org.xmlBlaster.util.ServiceListTO(bX);
this.trackGui.startAjaxAnimator(this.trc(E,L),2000);
cc.registerRequest(cd,120,this.onGetAccountLoginNames,this,m);
this.watchee.publishServiceMessage(ca,this.trackGui.returnQosOrException,this.trackGui,z);
},onGetAccountLoginNames:function(ce,cf,cg){if(ce.isException()){this.trackGui.errorMsgBox(this.trc(ba,H,ce.getBounce(),ce.getErrorMessage()));
this.close();
return;
}var ci=ce.getPropValue(org.xmlBlaster.util.PropTO.KEY_RESULT);

if(ci==null||ci==m){this._tableModel.setData([]);
return;
}var ch=ci.split(w);
this._completeRowData=[];
for(var ck=0;ck<ch.length;ck++){var cl=ch[ck];
var cj=cl.split(x);
this._completeRowData.push(cj);
}this._tableModel.setData(this._completeRowData);
},onPreOpen:function(){this.sendGetAccountLoginNames();
return true;
},clear:function(){},destroyPopup:function(){this.clear();

if(this.trackGui!=null){this.trackGui.getMyRoot().remove(this);
this.trackGui=null;
}this.close();
}},destruct:function(){this.destroyPopup();
}});
})();
(function(){var l="",k=",",j="Response: ",i="-",h="execute",g="ERROR",f="loginName",d="button title",c="INFO",b="AjaxAnimator",G="startReplication",F="Clear Status Lines",E="Replication Administration",D="destinationClusterNodeIsAlive",C="track.admin.replication.ReplicationWindow",B="Adding replication info failed: %1 %2",A="window title",z="images/replication.png",y="Get replication info",x="22/userAdmin.png",s="Start Replication",t="sourceClusterNodeId",q=": ",r="errorMsgBox",o="Start replication %1",p="Timeout ",m="Sent: ",n="getReplicationInfo",u="destinationClusterNodeId",v="close";
var a=275;
var w=0;
qx.Class.define(C,{extend:track.util.WindowWithHelpIcon,construct:function(H){track.util.WindowWithHelpIcon.call(this);
this.trackGui=H||null;
var I=new qx.ui.layout.VBox();
I.setSpacing(10);
this.setLayout(I);
this.setCaption(this.trc(A,E));
this.setIcon(xbGetIcon(x));
this.setResizable(true);
this.replicationGroupBox=null;
this.addListener(v,function(e){this.clear();
},this);
},members:{getAdminWindowTop:function(){return a;
},getAdminWindowLeft:function(){return w;
},createWindow:function(){var K=new qx.ui.basic.Image(z);
K.setHeight(80);
K.setScale(true);
this.add(K);
this.replicationGroupBox=new track.admin.replication.ReplicationGroupBox(this);
var L=this.replicationGroupBox.create();
this.add(L);
this.statusGroupBox=new track.admin.replication.StatusGroupBox(this);
var M=this.statusGroupBox.create();
this.add(M);
var J=new qx.ui.container.Composite();
J.setLayout(new qx.ui.layout.HBox());
this.add(J);
this.startReplicationButton=new qx.ui.form.Button(this.trc(d,s));
J.add(this.startReplicationButton);
this.startReplicationButton.addListener(h,function(e){this.sendStartReplication();
},this);
this.clearStatusButton=new qx.ui.form.Button(this.trc(d,F));
J.add(this.clearStatusButton);
this.clearStatusButton.addListener(h,function(e){this.statusGroupBox.clearStatusLines();
},this);
this.open();
this.sendGetReplicationInfo();
return true;
},sendGetReplicationInfo:function(){this.watchee=this.trackGui.watchee;

if(this.watchee==null)throw new Error("sendGetReplicationInfo with watchee is null");

if(this.replicationGroupBox==null)return;
var Q=org.xmlBlaster.util.PropTO;
var R=this.trackGui.getRequestResponseDispatcher();
var S=Q.VALUE_TASK_NAMED_GETREPLICATIONINFO+i+R.getRequestIdNextVal();
var O=new Array();
O.push(new Q(Q.KEY_SERVICENAME,Q.VALUE_SERVICE_REPLICATION));
O.push(new Q(Q.KEY_TASK,Q.VALUE_TASK_NAMED_GETREPLICATIONINFO));
O.push(new Q(Q.KEY_DATA,l));
O.push(new Q(Q.KEY_BOUNCE,S));
var N=new org.xmlBlaster.util.ServiceTO(O);
var P=new org.xmlBlaster.util.ServiceListTO(N);
this.trackGui.startAjaxAnimator(this.trc(b,y),2000);
R.registerRequest(S,120,this.onGetReplicationInfo,this,l);
this.watchee.publishServiceMessage(P,this.responseOrExceptionOrTimeoutReceived,this.trackGui,n);
},onGetReplicationInfo:function(T,U,V){if(T.isException()){this.trackGui.errorMsgBox(this.trc(r,B,T.getBounce(),T.getErrorMessage()));
this.close();
return;
}var W=T.getPropValue(org.xmlBlaster.util.PropTO.KEY_RESULT);
var bc=net.watchee.PropertyCollection.parseXml(W);
var bb=bc.getStr(t,l).split(k);
this.replicationGroupBox.onSourceServers(bb);
var ba=bc.getStr(u,l).split(k);
var X=bc.getStr(D,l).split(k);
this.replicationGroupBox.onDestinationServers(ba,X);
var Y=bc.getStr(f,l).split(k);
this.replicationGroupBox.onLoginNames(Y);
},onPreOpen:function(){return true;
},sendStartReplication:function(){this.watchee=this.trackGui.watchee;

if(this.watchee==null)throw new Error("sendStartReplication with watchee is null");

if(this.replicationGroupBox==null)return;
var bh=this.replicationGroupBox.fillPropertyCollectionFromGui();

if(bh==null){return ;
}var bd=bh.toXml();
var bk=org.xmlBlaster.util.PropTO;
var bl=this.trackGui.getRequestResponseDispatcher();
var bm=bk.VALUE_TASK_NAMED_STARTREPLICATION+i+bl.getRequestIdNextVal();
var bf=new Array();
bf.push(new bk(bk.KEY_SERVICENAME,bk.VALUE_SERVICE_REPLICATION));
bf.push(new bk(bk.KEY_TASK,bk.VALUE_TASK_NAMED_STARTREPLICATION));
bf.push(new bk(bk.KEY_DATA,bd));
bf.push(new bk(bk.KEY_MIME,bk.VALUE_RESULTMIME_PROPERTYCOLLECTION));
bf.push(new bk(bk.KEY_RESULTENCODING,bk.ENCODING_PLAIN));
bf.push(new bk(bk.KEY_BOUNCE,bm));
var be=new org.xmlBlaster.util.ServiceTO(bf);
var bi=new org.xmlBlaster.util.ServiceListTO(be);
this.trackGui.startAjaxAnimator(this.trc(b,o,bh.getStr(f)),2000);
var bg=false;
var bj=true;
bl.registerRequest(bm,120,this.onStartReplicationResponse,this,l,bg,bj);
this.watchee.publishServiceMessage(bi,this.trackGui.returnQosOrException,this.trackGui,G);
this.addStatusLine(null,c,m+bd);
},onStartReplicationResponse:function(bn,bo,bp){var bn=bn||null;

if(bn==null){var bq=p+bo;

if(bp.exception!=undefined&&bp.exception!=null&&bp.exception.errorCode!=undefined)bq=bp.exception.errorCode;
this.addStatusLine(null,g,j+bq);
return;
}else if(bn.isException()){this.addStatusLine(null,g,j+bn.getErrorCode()+q+bn.getErrorMessage());
}else{var br=bn.getResult();
this.addStatusLine(null,c,j+br);
}},getReplicationGroupBox:function(){return this.replicationGroupBox;
},addStatusLine:function(bs,bt,bu){this.statusGroupBox.addStatusLine(bs,bt,bu);
},clear:function(){},destroyPopup:function(){this.clear();

if(this.trackGui!=null){this.trackGui.getMyRoot().remove(this);
this.trackGui=null;
}this.close();
}},destruct:function(){this.destroyPopup();
}});
})();
(function(){var m="",k="label name",j="ERROR",h="changeSelection",g="Replication",f=",",d="-",c="Start Date:",b="User Account:",a="track.admin.replication.ReplicationGroupBox",F="16/actions/dialog-ok.png",E="Chosen:",D="Config: Source and destination cluster nodes are same",C="loginName",B="Invalid date '%1', example '2009-09-28'",A="sourceClusterNodeId",z=" login names chosen",y="errorMsgBox",x="Config: Missing destination server",w="Source Server:",t="multi",u="Destination Server:",r="Config: Missing account names",s="22/actions/dialog-cancel.png",p="Add Tracks:",q="destinationClusterNodeId",n="groupbox title",o="on",v="Config: Missing source server";
qx.Class.define(a,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(G){qx.core.Object.call(this);
this.replicationWindow=G;
this.trackGui=this.replicationWindow.trackGui;
this.programmaticSetSelected=false;
},members:{create:function(){this.groupBox=new qx.ui.groupbox.GroupBox(this.trc(n,g));
var M=new qx.ui.layout.Grid(10,2);
this.groupBox.setLayout(M);
var J=240;
var N=new qx.ui.basic.Label(this.trc(k,w));
var L=new qx.ui.basic.Label(this.trc(k,u));
var K=new qx.ui.basic.Label(this.trc(k,b));
var O=new qx.ui.basic.Label(this.trc(k,E));
var I=new qx.ui.basic.Label(this.trc(k,p));
var H=new qx.ui.basic.Label(this.trc(k,c));
var P=0;
this.groupBox.add(N,{row:P++,column:0});
this.groupBox.add(L,{row:P++,column:0});
this.groupBox.add(K,{row:P++,column:0});
this.groupBox.add(O,{row:P++,column:0});
this.groupBox.add(I,{row:P++,column:0});
this.groupBox.add(H,{row:P++,column:0});
this.__uw=new qx.ui.form.SelectBox();
this.__uw.setWidth(J);
this.__ux=new qx.ui.form.SelectBox();
this.__ux.setWidth(J);
this.__tO=new qx.ui.form.List();
this.__tO.setScrollbarX(o);
this.__tO.set({height:120,width:J,selectionMode:t});
this.__uy=new qx.ui.form.CheckBox();
this.__uz=new qx.ui.form.TextField();
var P=0;
this.groupBox.add(this.__uw,{row:P++,column:1});
this.groupBox.add(this.__ux,{row:P++,column:1});
this.groupBox.add(this.__tO,{row:P++,column:1});
this.__uA=new qx.ui.basic.Label(m);
this.groupBox.add(this.__uA,{row:P++,column:1});
this.groupBox.add(this.__uy,{row:P++,column:1});
this.groupBox.add(this.__uz,{row:P++,column:1});
this.__tO.addListener(h,function(e){var Q=e.getData();
this.__ui(Q);
},this);
this.__uw.addListener(h,function(e){if(this.programmaticSetSelected)return;
var S=(e.getData().length==0)?null:e.getData()[0];

if(S==null)return;
var R=S.getModel();
this.info("Using source cluster "+R);
},this);
this.__ux.addListener(h,function(e){if(this.programmaticSetSelected)return;
var U=(e.getData().length==0)?null:e.getData()[0];

if(U==null)return;
var T=U.getModel();
this.info("Using destination cluster "+T);
},this);
return this.groupBox;
},__ui:function(V){if(V==null)return ;
var W=m;

for(var i=0,l=V.length;i<l;i++){if(W.length>0)W+=f;
W+=V[i].getModel();
}this.info("Using loginName "+W);

if(W.length>100)this.__uA.setValue(m+V.length+z);
else this.__uA.setValue(W);
},findListItem:function(X,Y){if(Y==null)return null;
var ba=X.getChildren();

for(var i=0,l=ba.length;i<l;i++){var bb=ba[i];

if(bb!=null&&bb.getModel()==Y)return bb;
}return null;
},fillPropertyCollectionFromGui:function(){if(this.validateGuiEntries()==false)return null;
var bc=new net.watchee.PropertyCollection(g);
bc.addKeyValue(A,this.getSourceServer());
bc.addKeyValue(q,this.getDestinationServer());
bc.addKeyValue(C,this.getAccountNames());
return bc;
},onLoginNames:function(bd){this._fillSelectBox(this.__tO,bd);
},onSourceServers:function(be){this._fillSelectBox(this.__uw,be);
},onDestinationServers:function(bf,bg){this._fillSelectBox(this.__ux,bf,bg);
},_fillSelectBox:function(bh,bi,bj){var bi=bi||[];
var bj=bj||null;
if(bh.hasChildren())bh.removeAll();

for(var i=0,l=bi.length;i<l;i++){var bk=bi[i];

if(bk==null||bk.length==0)continue;
var bl=null;

if(bj!=null&&bj.length>i){if(org.xmlBlaster.util.toBoolean(bj[i],false)==true){bl=xbGetQxIcon(F);
}else{bl=xbGetQxIcon(s);
}}bh.add(new qx.ui.form.ListItem(bk,bl,bk));
}},getDate:function(bm){var bn=org.xmlBlaster.util.trim(bm.getValue());

if(bn==null||bn.length==0){return bn;
}
if(bn.indexOf(d)!=4||bn.length!=10){this.trackGui.errorMsgBox(this.trc(y,B,bn));
return null;
}return bn;
},getAccountNames:function(){if(this.__tO.getSelection().length==0)return null;
var bo=m;
var bp=this.__tO.getSelection();

for(var i=0,l=bp.length;i<l;i++){if(bo.length>0)bo+=f;
bo+=bp[i].getModel();
}return bo;
},getSourceServer:function(){if(this.__uw.getSelection().length==0)return null;
return this.__uw.getSelection()[0].getModel();
},getDestinationServer:function(){if(this.__ux.getSelection().length==0)return null;
return this.__ux.getSelection()[0].getModel();
},validateGuiEntries:function(){if(this.getSourceServer()==null||this.getSourceServer()==m){this.replicationWindow.addStatusLine(null,j,v);
return false;
}
if(this.getDestinationServer()==null||this.getDestinationServer()==m){this.replicationWindow.addStatusLine(null,j,x);
return false;
}
if(this.getSourceServer()==this.getDestinationServer()){this.replicationWindow.addStatusLine(null,j,D);
return false;
}
if(this.getAccountNames()==null||this.getAccountNames()==m){this.replicationWindow.addStatusLine(null,j,r);
return false;
}return true;
},destruct:function(){this._disposeFields();
this._disposeObjects();
}}});
})();
(function(){var q="Status",p="INFO",o="black",n="groupbox title",m="",l="<span style='color:",k="red",j="WARN",i="Comment",h="'>",c="green",g="OK",f="Timestamp",b="yellow",a="<span>",e="track.admin.replication.StatusGroupBox",d="ERROR";
qx.Class.define(e,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(r){qx.core.Object.call(this);
this.replicationWindow=r;
this.trackGui=this.replicationWindow.trackGui;
this._tableModel=null;
},members:{create:function(){this.groupBox=new qx.ui.groupbox.GroupBox(this.trc(n,q));
this.groupBox.setLayout(new qx.ui.layout.VBox());
this._tableModel=new qx.ui.table.model.Simple();
this._tableModel.setColumns([f,q,i]);
this._tableModel.setColumnEditable(2,true);
this.clearStatusLines();
var s=new qx.ui.table.Table(this._tableModel);
s.set({height:200,decorator:null});
s.setColumnWidth(0,164);
s.setColumnWidth(1,50);
s.setColumnWidth(2,300);
s.getSelectionModel().setSelectionMode(qx.ui.table.selection.Model.MULTIPLE_INTERVAL_SELECTION);
var t=s.getTableColumnModel();
t.setDataCellRenderer(1,new qx.ui.table.cellrenderer.Html());
this.groupBox.add(s);
return this.groupBox;
},addStatusLine:function(u,v,w){var u=u||org.xmlBlaster.util.getCurrentIsoLocalTimestampStr(null,true,false);
var v=v||g;
var w=w||m;
var x=this._tableModel.getData();
var y=o;

if(v==p)y=c;
else if(v==j)y=b;
else if(v==d)y=k;
x.unshift([u,l+y+h+v+a,w]);
this._tableModel.setData(x);
},clearStatusLines:function(){this._tableModel.setData([]);
},destruct:function(){this._disposeFields();
this._disposeObjects();
}}});
})();
(function(){var l="images/anim/watcheeAjax_32.gif",k="#E6FAED",j="visible",i="Loading",h="... ",g="interval",f="track.util.AjaxAnimator",d="...",c="button-pressed",b="hidden",a="left";
qx.Class.define(f,{extend:qx.core.Object,construct:function(m){qx.core.Object.call(this);
this.trackGui=m;
this.animator=null;
},members:{startAjaxAnimator:function(n,o){var n=n||i;
var o=org.xmlBlaster.util.toNumber(o,20000);

if(this.animator==null){this.animator=new qx.ui.basic.Atom(h+n,l).set({backgroundColor:k,decorator:c,iconPosition:a,padding:5,allowGrowY:false});
this.trackGui.headerBar.add(this.animator,{top:2,left:2});
}else{this.animator.setLabel(n);
this.animator.setVisibility(j);
}this.stopAjaxAnimator(o);
},changeLabelAjaxAnimator:function(p){if(this.animator!=null)this.animator.setLabel(p);
},stopAjaxAnimator:function(q){if(this.animator!=null){if(this.animatorTimer==null){this.animatorTimer=new qx.event.Timer(10000);
this.animatorTimer.setEnabled(false);
this.animatorTimer.addListener(g,function(e){this.__uB();
},this);
}var r=org.xmlBlaster.util.toNumber(q,2000);
this.animatorTimer.stop();
this.animatorTimer.startWith(r);
}},__uB:function(){if(this.animator!=null){this.animatorTimer.setEnabled(false);
this.animator.setLabel(d);
this.animator.setVisibility(b);
this.animatorTimer.stop();
}}},destruct:function(){this._disposeFields();
this._disposeObjects();
}});
})();
(function(){var bF="",bE="public",bD="loginName",bC="demo",bB="userProfile",bA="password",bz="#000000",by="showSortableDeviceTable",bx="showInfoWindowForLatestPosition",bw="images/watchee-point.png",bl="session.maxSessions",bk="showMenuBar",bj="autoLogin",bi="mapZoom",bh="rundum",bg="#FFFFFF",bf="mapCenterOnLocationUpdate",be="showMenuBarVideoButton",bd="mapCenterLat",bc="mapCenterLng",bM="FF0000",bN="defaultIcon.arrowColor",bK="demo1",bL="defaultIcon.labelType",bI="useOpenLayers",bJ="defaultIcon.courseModulo",bG="2",bH="trackingOnFor",bO="numSegmentsToShow",bP="100%",bp="defaultIcon.arrowWidth",bo="red-dot.png",br="maxGpsDataPerTrackCurrent",bq="defaultIcon.speedSteps",bt="defaultIcon.labelColor",bs="defaultIcon.renderType",bv="numIconsToShow",bu="mapType",bn="defaultIcon.iconPixelWidth",bm="defaultIcon.maxSpeed",a="mapSegmentWidth",b="trackingOn",c="panningFenceLatPercent",d="isGpsOem",e="panningFenceLngPercent",f="demo.",g="Click on one of the buttons to change the look an feel",h="defaultIcon.name",i="Überlingen",j="FF2200",bT="showSmsTab",bS="mapStaticMarkerArray",bR="useMapWatcheeMapnikLayer",bQ="mapMaxZoomOnShow",bX="defaultIcon.labelFormat",bW="mapInfoShowHeight",bV="locale",bU="geofenceWindow.enabled",ca="mm-",bY="Schiff",I="useMapGoogleLayer",J="xsmsMaySendToOthers",G="rulesWindow.enabled",H="track.util.SessionProfile",M="portal.",N="${aliasName}",K="gpsvision",L="rundumStart",E="trackConfigWindow.trackOnOffButton.enabled",F="demo-02",r="shadow-window",q="mapInfoPopupPhoneCall",t="16/apps/preferences-desktop-wallpaper.png",s="Watchee Themes",n="meichle",m="isGpsVision",p="changePassword.enabled",o="showEmbeddedHtmlFrameLeftBottom",l="embeddedHtmlFrameLeftBottom.url",k="numSegmentsToShowCurrent",S="isgpsoem",T="demo.html",U="ruleColIsTelephone",V="G_SATELLITE_MAP",O="Eichhorn",P="/iframelb/index.html",Q="Romanshorn",R="Vector",W="^mm-...$,^mmt-...$",X="mapClickPhoneCall",B="restSendingTest.allowed",A="isWatcheeBeta",z="useMapWatcheeOsmarenderLayer",y="destroyAccount.enabled",x="trackConfigWindow.trackRateButton.enabled",w="mapInfoOverallDistance",v="Lindau Schlagwerk",u="G_PHYSICAL_MAP",D="blue-dot.png",C="welcomeBox",Y="emailSendingTest.allowed",ba="32/actions/system-run.png",bb="smsSendingTest.allowed";
net.watchee.isDemoAccount=false;
net.watchee.isPortal=false;
qx.Class.define(H,{extend:qx.core.Object,construct:function(cb){qx.core.Object.call(this);
this.trackGui=cb;
},members:{activate:function(){this.activateUserProfile(xbProperties.getStr(bB,null));
},activateLoginName:function(cc){this.activateUserProfile(xbProperties.getStr(bB,null),cc);
},activateGpsOem:function(cd,ce){if(isGpsOem){xbProperties.setDefaultProp(bB,d);
cd=xbProperties.getStr(bB,cd);
}var cf=cd.toLowerCase().indexOf(S)!=-1;

if(!cf)return false;

if(xbProperties.getStr(bD,bF)==bF){xbProperties.setDefaultProp(bD,bF);
}
if(xbProperties.getStr(bA,bF)==bF){xbProperties.setDefaultProp(bA,bF);
}watcheeOrange=bg;
watcheeColorSelf=bz;
watcheeBlue=bz;
watcheeDefaultIcon=D;
xbProperties.setDefaultProp(bx,false);
xbProperties.setDefaultProp(bk,true);
xbProperties.setDefaultProp(be,false);
xbProperties.setDefaultProp(by,true);
xbProperties.setDefaultProp(o,false);
xbProperties.setDefaultProp(l,P);
xbProperties.setDefaultProp(bl,100);
this.info("User profile="+cd+" loginName="+ce+" activated");
return true;
},activateGpsVision:function(cg,ch){if(isGpsVision&&cg==null||cg.length==0){xbProperties.setDefaultProp(bB,m);
cg=xbProperties.getStr(bB,cg);
}var ci=cg.toLowerCase().indexOf(K)!=-1;

if(!ci)return false;
watcheeOrange=bg;
watcheeColorSelf=bz;
watcheeBlue=bz;
watcheeDefaultIcon=bo;
xbProperties.setDefaultProp(bx,false);
xbProperties.setDefaultProp(bk,true);
xbProperties.setDefaultProp(be,true);
xbProperties.setDefaultProp(by,true);

if(net.watchee.isDemoAccount){xbProperties.setDefaultProp(bD,bC);
xbProperties.setDefaultProp(bH,F);
xbProperties.setDefaultProp(bj,true);
xbProperties.setDefaultProp(bA,bK);
xbProperties.setDefaultProp(bl,1000);
xbProperties.setDefaultProp(bi,14);
}this.info("User profile="+cg+" loginName="+ch+" activated");
return false;
},activateRundum:function(cj,ck){var cm=(!org.xmlBlaster.util.isFilled(cj)&&ck.indexOf(bh)==0||cj.indexOf(bh)==0);

if(!cm)return false;
xbProperties.setDefaultProp(bk,true);
xbProperties.setAccountProp(bl,100);
xbProperties.setDefaultProp(by,true);
xbProperties.setAccountProp(b,true);
xbProperties.setAccountProp(bf,false);
xbProperties.setAccountProp(bj,false);
xbProperties.setAccountProp(bD,bh);
xbProperties.setAccountProp(bA,bF);
xbProperties.setAccountProp(br,3);
xbProperties.setAccountProp(bv,1);
xbProperties.setAccountProp(bO,6);
xbProperties.setAccountProp(k,6);
xbProperties.setAccountProp(bx,false);
xbProperties.setAccountProp(c,-1);
xbProperties.setAccountProp(e,-1);
xbProperties.setAccountProp(bs,net.watchee.IconDisplayInfo.RENDER_ARROW);
xbProperties.setAccountProp(h,R);
xbProperties.setAccountProp(bn,80);
xbProperties.setAccountProp(bp,bG);
xbProperties.setAccountProp(bX,N);
xbProperties.setAccountProp(bt,bM);
xbProperties.setAccountProp(bN,j);
xbProperties.setAccountProp(bm,20);
xbProperties.setAccountProp(bq,4);
xbProperties.setAccountProp(bJ,10);
xbProperties.setAccountProp(bL,net.watchee.IconDisplayInfo.LABEL_TYPE_DYNAMIC);
xbProperties.setAccountProp(J,true);
var cl=new Array();
cl.push({lat:47.53961667,lng:9.684367,icon:bw,title:v});
cl.push({lat:47.53701667,lng:9.692383,icon:bw,title:bY});
cl.push({lat:47.57333,lng:9.388333,icon:bw,title:Q});
cl.push({lat:47.66667,lng:9.223333,icon:bw,title:O});
cl.push({lat:47.76167,lng:9.165,icon:bw,title:i});
xbProperties.setAccountProp(bS,cl);
xbProperties.setAccountProp(a,1);

if(cj==L){xbProperties.setAccountProp(bu,V);
xbProperties.setAccountProp(bd,47.53);
xbProperties.setAccountProp(bc,9.7);
xbProperties.setAccountProp(bi,14);
}else{xbProperties.setAccountProp(bu,u);
xbProperties.setAccountProp(bd,47.61);
xbProperties.setAccountProp(bc,9.39);
xbProperties.setAccountProp(bi,11);
xbProperties.setAccountProp(bQ,13);
}this.info("User profile "+cj+" activated");
return true;
},activateMeichleMohr:function(cn,co){var cq=((!org.xmlBlaster.util.isFilled(cn)||isGpsVision)&&co.indexOf(ca)==0||cn.indexOf(n)==0);

if(!cq)return false;
watcheeOrange=bg;
watcheeColorSelf=bz;
watcheeBlue=bz;
watcheeDefaultIcon=bo;
xbProperties.setDefaultProp(bk,true);
xbProperties.setDefaultProp(be,true);
xbProperties.setDefaultProp(by,true);
xbProperties.setDefaultProp(bH,W);
xbProperties.setAccountProp(br,10);
xbProperties.setAccountProp(bv,3);
xbProperties.setAccountProp(bO,5);
xbProperties.setAccountProp(bx,false);
xbProperties.setAccountProp(bs,net.watchee.IconDisplayInfo.RENDER_ARROW);
xbProperties.setAccountProp(bn,80);
xbProperties.setAccountProp(bp,bG);
xbProperties.setAccountProp(bt,bM);
xbProperties.setAccountProp(bN,bM);
xbProperties.setAccountProp(bm,80);
xbProperties.setAccountProp(bq,4);
xbProperties.setAccountProp(bJ,30);
xbProperties.setAccountProp(bL,net.watchee.IconDisplayInfo.LABEL_TYPE_LOGINNAME);
xbProperties.setAccountProp(a,1);
xbProperties.setAccountProp(bd,47.87);
xbProperties.setAccountProp(bc,9.1);
xbProperties.setAccountProp(bi,10);
xbProperties.setAccountProp(bf,false);
xbProperties.setAccountProp(bU,true);
xbProperties.setAccountProp(G,true);
var cp=xbProperties.getBoolean(bT,false);

if(co.length!=5){}else{xbProperties.setAccountProp(x,true);
xbProperties.setAccountProp(E,false);
}xbProperties.setAccountProp(U,false);
xbProperties.setAccountProp(X,false);
xbProperties.setAccountProp(q,false);
xbProperties.setAccountProp(w,false);
xbProperties.setAccountProp(bW,false);
this.info("User profile "+cn+" activated");
return true;
},activateWatcheeBeta:function(cr,cs){var ct=org.xmlBlaster.util.getLocation().pathname;
var cu=(ct.toLowerCase().indexOf(T)>=0);

if(!cu)return false;
xbProperties.setDefaultProp(bB,A);
cr=xbProperties.getStr(bB,cr);
xbProperties.setDefaultProp(bx,true);
xbProperties.setDefaultProp(bk,true);
xbProperties.setDefaultProp(by,true);
xbProperties.setDefaultProp(bj,true);
xbProperties.setDefaultProp(bA,bK);
xbProperties.setDefaultProp(bl,1000);
this.info("User profile="+cr+" loginName="+cs+" activated");
return true;
},activateWatcheePublic:function(cv,cw){if(!isWatchee){return false;
}xbProperties.setAccountProp(bI,false);
var cy=(cv.toLowerCase().indexOf(bE)==0||cw.toLowerCase().indexOf(bE)==0);

if(!cy)return false;
xbProperties.setAccountProp(bl,100000);
var cx=xbProperties.getBoolean(bj,false);

if(cx){if(xbProperties.getStr(bD,bF)==bF||xbProperties.getStr(bD,bF)==bC){xbProperties.setDefaultProp(bD,bE);
}
if(xbProperties.getStr(bA,bF)==bF){xbProperties.setDefaultProp(bA,bE);
}}else{if(xbProperties.getStr(bD,bE)==bE){xbProperties.setDefaultProp(C,true);
}}this.info("User profile="+cv+" loginName="+cw+" activated");
return true;
},activateUserProfile:function(cz,cA){var cz=org.xmlBlaster.util.isDefined(cz)?cz:bF;
var cA=org.xmlBlaster.util.isDefined(cA)?cA:bF;
xbProperties.setAccountProp(bI,true);
xbProperties.setAccountProp(bR,true);
xbProperties.setAccountProp(z,false);
xbProperties.setAccountProp(I,false);
var cB=xbProperties.getStr(bV,bF);

if(org.xmlBlaster.util.isFilled(cB)){qx.locale.Manager.getInstance().setLocale(cB);
}var location=org.xmlBlaster.util.getLocation();
var cC=location.hostname;
net.watchee.isPortal=(cC.toLowerCase().indexOf(M)>=0);
net.watchee.isDemoAccount=(cC.toLowerCase().indexOf(f)>=0);

if(!net.watchee.isPortal&&xbProperties.getStr(bD,bF)==bF&&(cA==null||cA==bF||cA.toLowerCase().indexOf(bC)>=0)){xbProperties.setDefaultProp(bD,bC);
xbProperties.setAccountProp(bf,true);
net.watchee.isDemoAccount=true;
}if(this.activateWatcheeBeta(cz,cA)==true)return;

if(this.activateWatcheePublic(cz,cA)==true)return;

if(this.activateGpsOem(cz,cA)==true)return;

if(this.activateGpsVision(cz,cA)==true)return;

if(this.activateRundum(cz,cA)==true)return;

if(this.activateMeichleMohr(cz,cA)==true)return;
},getCurrentLoginName:function(){if(this.trackGui==null||this.trackGui.watchee==null)return bF;
var cD=this.trackGui.watchee.getAccountTO().getLoginName();
return cD;
},hasPermissionForChangingPassword:function(){var cE=this.getCurrentLoginName();

if(cE==bE||cE==bC)return false;

if(net.watchee.isDemoAccount)return false;
var cF=xbProperties.getBoolean(p,true);
return cF;
},hasPermissionForDestroyAccount:function(){var cG=this.getCurrentLoginName();

if(cG==bE||cG==bC)return false;

if(net.watchee.isDemoAccount)return false;
var cH=xbProperties.getBoolean(y,true);
return cH;
},hasPermissionForRestSending:function(){var cI=this.getCurrentLoginName();

if(cI==bE||cI==bC)return false;
var cJ=xbProperties.getBoolean(B,true);
return cJ;
},hasPermissionForEmailSending:function(){var cK=this.getCurrentLoginName();

if(cK==bE||cK==bC)return false;

if(net.watchee.isDemoAccount)return false;
var cL=xbProperties.getBoolean(Y,true);
return cL;
},hasPermissionForSmsSending:function(){var cM=this.getCurrentLoginName();

if(cM==bE||cM==bC)return false;

if(net.watchee.isDemoAccount)return false;
var cN=xbProperties.getBoolean(bb,true);
return cN;
},changeTheme:function(){var cO=qx.theme.manager.Decoration.getInstance().getTheme();
var cP=cO.decorations[r];
},chooseThemesWindow:function(){alert("chooseThemesWindow: Not supported like this in qooxdoo v1.6, change theme/*.js and remove AjaxAnimator.js decorator: button-pressed");
var cR=new qx.ui.window.Window(s,xbGetQxIcon(t));
cR.setLayout(new qx.ui.layout.Canvas());
this.trackGui.getMyRoot().add(cR,{left:50,top:150,width:bP,height:bP});
var cQ=new qx.ui.basic.Atom(g,xbGetQxIcon(ba));
cR.add(cQ);
return cR;
}},destruct:function(){this._disposeFields();
this._disposeObjects();
}});
})();
(function(){var bF="execute",bE="theme",bD="",bC="mail",bB="zoom",bA="qx.theme.Modern",bz="keypress",by=")",bx="k320i",bw="FAILED",bk="qx.theme.Classic",bj="qx.theme.Simple",bi="<enter here>",bh="Enter Data",bg="showDate",bf="removeInputControl",be="DE",bd="in1.labelOn=Blabla,in1.labelOff=XXXX,in2.labelOn=sdkfsd,in2.labelOff=sdafsad,out1.labelOn=Schneepflug aktiv,out1.labelOff=Schneepflug oben",bc="Prompt",bb="Get Map Coordinates",bM="GlobalProperty",bN="addInputControl",bK="<qos><multiSubscribe>false</multiSubscribe><local>false</local><initialUpdate>true</initialUpdate><updateOneway>true</updateOneway><history numEntries='0' newestFirst='false'/></qos>",bL="<br /> ",bI="Pls check you code, there was some severe problem which seems to affect some specific operation in some special environment if you know what I mean.",bJ="changeSelection",bG="sound zoom global",bH="Please enter a <b>nice text</b>",bO="Set Map Coordinates",bP="getBuddies",bp="<key oid='__sys__Event'/>",bo="file:///home/watchee/watcheeweb/track/source/images/marker/poi/icons/world.png",br="getFriendOf",bq="ioAliasNames",bt="setContainerValue",bs="</i><br />setContainerValue<br /><i>",bv="supportEmail",bu="getAccountPropertyInputConfig",bn="type",bm="Reverse Google-Geocode",b="bjoernsSubscribes",c="VoutputRepeat",d="A private Question",f="de",g="</font></b> ",h="$WATCHEE,id=120203,lat=47.78,lon=9.18,ts=2009-04-25T12:45:55.355,v=120",j="DeviceTests: getCommandList",k="Activate OUTPUT 1",m="VoutputDurationSec",n="red",bT=" ",bS="VoutputNumber",bR=" sec",bQ="getTracks(k320i)",bX="TestForm.js",bW="en",bV="GET",bU="Get Base64",ca="track.test.TestForm",bY="Timeout, no response after ",K="someReturnObj",L="OEM/cleverID/supportEmail",I="Error, <b>bad thing</b>",J="Raw subscribe",O=" (",P="Reverse OSM-Geocode",M="Ask",N="roaming",G="EN",H="http://gpsvision.de/portalhelp/",v=", ",u="Info",x="1",w="Toggle Logging",r="AccountProperty InputConfig response is empty!",q="__sys__Event",t="---",s="sound mail local",p="http://localhost:8080/watchee/ajax?ActionType=request&topicId=watchee.service&task=getRawAudio&data=1090328&resultMime=audio/ogg",o="<br /> (",U="getTrack(k320i,2007-12-30)",V="2007-12-30",W="Error",X="_action",Q="AccountProperty response is removeInputControl<br /><i>",R="Disable OUTPUT1",S="helpUrl",T="Get Base64 from file",Y="Testing Window",ba="Do you really want to <b>ask</b> a veryyyyyy long question which should not fit into one row?",F="internal.illegalArgument",E="16/apps/preferences-desktop-multimedia.png",D="SendDeviceKeyValue",C="</i><br />addInputControl<br /><i>",B="<b><font color='red'>",A="ROAMING",z="Yes, <b>well done</b>",y="images/marker/poi/icons/world.png";
function bl(cb,cc,cd){alert("Processing returnQosOrException ...");

try{if(cb==null)return;
var ch=org.xmlBlaster.util.getDOMDocument(cb);
var ce=org.xmlBlaster.util.parseXmlBlasterResponse(ch);

if(ce.length==0)return ;
var ci=ce[0];

if(ci.isException()){var cf=ci.getXmlBlasterException().getErrorCodeStr();
var cg=ci.getXmlBlasterException().getMessage();
}else{}}catch(cj){alert("Processing returnQosOrException failure"+cj);
}}function a(ck){for(var co=0;co<ck.length;co++){var cq=ck[co];

try{if(cq.isException()){var cn=cq.getXmlBlasterException();
alert("The server is reporting an error"+cn);
return;
}var cm=cq.getKeyData().getOid();

if(cm==q){var cl=cq.getQosData().getClientProperty(key,null);
var cp=cq.getContentStr();
}}catch(cr){alert("Processing onAjaxUpdate failure: "+cq.toXml()+" "+cr);
}}}qx.Class.define(ca,{extend:qx.core.Object,construct:function(cs){qx.core.Object.call(this);
this.trackGui=cs;
},members:{showForm:function(){var cG=new qx.ui.window.Window(Y,xbGetQxIcon(E));
cG.setLayout(new qx.ui.layout.Canvas());
cG.setWidth(200);
cG.setHeight(200);
this.trackGui.getMyRoot().add(cG,{left:480,top:0});
var cz=0;
var cL=0;
var cJ=new qx.ui.container.Composite(new qx.ui.layout.Grid());
cJ.setBackgroundColor(n);
var cu=null;
var cB=new qx.ui.form.Button(bP);
cB.addListener(bF,function(e){qx.event.Timer.once(function(){this.trackGui.getBuddies();
},this,1);
},this);
cJ.add(cB,{row:cz,column:cL++});
var cA=new qx.ui.form.Button(br);
cA.addListener(bF,function(e){qx.event.Timer.once(function(){this.trackGui.getFriendOf();
},this,1);
},this);
cJ.add(cA,{row:cz,column:cL++});
var cH=new qx.ui.form.Button(bQ);
cH.addListener(bF,function(e){qx.event.Timer.once(function(){this.trackGui.getTracks(bx);
},this,1);
},this);
cJ.add(cH,{row:cz,column:cL++});
var cv=new qx.ui.form.Button(U);
cv.addListener(bF,function(e){qx.event.Timer.once(function(){this.trackGui.getTrackLocations(bx,V);
},this,1);
},this);
cJ.add(cv,{row:cz,column:cL++});
var cF=new qx.ui.form.Button(w);
cF.addListener(bF,function(e){qx.event.Timer.once(function(){qx.log.appender.Console.toggle();
},this,1);
},this);
cJ.add(cF,{row:cz,column:cL++});
var cx=new qx.ui.form.Button(bu);
cx.addListener(bF,function(e){var cM=this.trackGui.getMyLoginName();
var cN=org.xmlBlaster.util.PropTO;
this.trackGui.sendGetPoiInputConfig(cM,function(cO,cP,cQ){var da=bD;

if(cO==null){da=bY+cQ.timeoutSec+bR;
}else if(cO.isException()){var cV=cO.getPropValue(cN.KEY_ERRORCODE);
var cT=cO.getPropValue(cN.KEY_RESULT);
da+=B+cV+g;
da+=bL+cT;
da+=o+originalCommand+by;
}else{da=cO.getPropValue(cN.KEY_RESULT);
}
if(da!=null&&da.length>0){var cX=net.watchee.PropertyCollections.parseXml(da);
var cY=cX.getPropertyCollections();

for(var i=0,l=cY.length;i<l;i++){var cU=cY[i];
var cS=cU.getStr(bf);
var cR=cU.getStr(bt);
var cW=cU.getStr(bN);
this.trackGui.errorMsgBox(Q+cS+bs+cR+C+cW);
}}else{this.trackGui.infoMsgBox(r);
}},this,K);
},this);
cJ.add(cx,{row:cz,column:cL++});
cz++;
cL=0;
var cE=new qx.ui.form.Button(M);
cE.addListener(bF,function(e){this.trackGui.askMsgBox(d,ba,function(db,dc){if(db)alert("OK");
else alert("No");
},this,null);
},this);
cJ.add(cE,{row:cz,column:cL++});
var cD=new qx.ui.form.Button(u);
cD.addListener(bF,function(e){this.trackGui.infoMsgBox(z);
},this);
cJ.add(cD,{row:cz,column:cL++});
var cI=new qx.ui.form.Button(bc);
cI.addListener(bF,function(e){this.trackGui.promptMsgBox(bh,bH,bi,5,true,function(dd,de){if(dd){alert(de);
}else{alert("cancel");
}},this);
},this);
cJ.add(cI,{row:cz,column:cL++});
var cw=new qx.ui.form.Button(W);
cw.addListener(bF,function(e){var df=new org.xmlBlaster.util.XmlBlasterException(F,bX,bI);
this.trackGui.errorMsgBox(I,df);
},this);
cJ.add(cw,{row:cz,column:cL++});
{var cy=new qx.ui.form.Button(bM);
cy.addListener(bF,function(e){var dh=this.trackGui.getMyOemProperty(L,bw);
var di=this.trackGui.getMyOemProperty(bv,bw);
var dg=this.trackGui.getMyOemProperty(S,H);
alert("OEM/cleverID/supportEmail="+dh+"  supportEmail="+di+"  helpUrl="+dg);
},this);
cJ.add(cy,{row:cz,column:cL++});
};
{var cy=new qx.ui.form.Button(A);
cy.addListener(bF,function(e){if(this.trackGui.watchee==null)return false;
var dk=new net.watchee.PropertyCollection();
dk.add(new net.watchee.PropertyPair(bn,N));
dk.add(new net.watchee.PropertyPair(X,x));
var dj=true;
this.trackGui.sendActionToDevice(this.trackGui.getMyLoginName(),dk,dj);
},this);
cJ.add(cy,{row:cz,column:cL++});
};
cz++;
cL=0;
{var cy=new qx.ui.form.Button(be);
cy.addListener(bF,function(e){qx.locale.Manager.getInstance().setLocale(f);
},this);
cJ.add(cy,{row:cz,column:cL++});
};
{var cy=new qx.ui.form.Button(G);
cy.addListener(bF,function(e){qx.locale.Manager.getInstance().setLocale(bW);
},this);
cJ.add(cy,{row:cz,column:cL++});
};
{var cy=new qx.ui.form.Button(s);
cy.addListener(bF,function(e){net.watchee.playSound(xbGetLocSound(bC),xbGetLocSound(bC),this);
},this);
cJ.add(cy,{row:cz,column:cL++});
};
{var cy=new qx.ui.form.Button(bG);
cy.addListener(bF,function(e){net.watchee.playSound(xbGetSound(bB),xbGetSound(bB),this);
},this);
cJ.add(cy,{row:cz,column:cL++});
};
{var cy=new qx.ui.form.Button(P);
cy.addListener(bF,function(e){var dq=net.watchee.getReverseGeocode(47.778,9.178);
var dr=dq.address.road||t;
var dn=dq.address.postcode||bD;
var dm=dq.address.village||bD;
var dl=dq.address.city||null;
var dp=dr+v+dn+bT+dm;

if(dl!=null&&dl!=dm)dp+=O+dl+by;
alert("Geocode address is: "+dp);
},this);
cJ.add(cy,{row:cz,column:cL++});
};
{var cy=new qx.ui.form.Button(bm);
cy.addListener(bF,function(e){net.watchee.getReverseGeocodeGoogle(47.778,9.178,function(ds){alert("TestForm.js getReverseGeocodeGoogle: "+ds.formatted_address);
},this);
},this);
cJ.add(cy,{row:cz,column:cL++});
};
cz++;
cL=0;
{var cy=new qx.ui.form.Button(j);
cy.addListener(bF,function(e){this.trackGui.getWindowManager().popupTestDeviceWindow();
var dt=null;
this.trackGui.sendGetDeviceCommandList(dt);
},this);
cJ.add(cy,{row:cz,column:cL++});
};
{var cy=new qx.ui.form.Button(J);
cy.addListener(bF,function(e){this.rawSubscribe();
},this);
cJ.add(cy,{row:cz,column:cL++});
};
this.datetime=new track.util.DateTimePicker();
cJ.add(this.datetime,{row:cz,column:cL++});
{var cy=new qx.ui.form.Button(bg);
cy.addListener(bF,function(e){alert(this.datetime.getValue());
},this);
cJ.add(cy,{row:cz,column:cL++});
};
{var cy=new qx.ui.form.Button(bb);
cy.addListener(bF,function(e){var du=this.trackGui.watchee.getMapManager().getCenterCoordinates();
var dv=this.trackGui.watchee.getMapManager().getZoomFactor();
alert("Coordinates="+du.toKmlLngLatStr()+" zoomFactor="+dv);
},this);
cJ.add(cy,{row:cz,column:cL++});
};
{var cy=new qx.ui.form.Button(bO);
cy.addListener(bF,function(e){this.trackGui.watchee.getMapManager().setCenterAndZoom(47.11,9.18,6);
},this);
cJ.add(cy,{row:cz,column:cL++});
};
cz++;
cL=0;
{var cC=new qx.ui.form.TextField(p);
cC.addListener(bz,function(dw){var dy=org.xmlBlaster.util.createXmlHttpRequest();
var dx=bV;
var dz=cC.getValue();
var dC=false;
dy.open(dx,dz,dC);
var dA=bD;
dy.send(dA);

if(dy.status==200){var dB=dy.responseText;
alert(dB);
}else{alert("Fail");
}},this);
cJ.add(cC,{row:cz,column:cL++});
};
{var cy=new qx.ui.form.Button(bU);
cy.addListener(bF,function(e){var dD=net.watchee.getIconBlobBase64(y);
alert(dD);
},this);
cJ.add(cy,{row:cz,column:cL++});
};
{var cy=new qx.ui.form.Button(T);
cy.addListener(bF,function(e){var dE=net.watchee.getIconBlobBase64(bo);
alert(dE);
},this);
cJ.add(cy,{row:cz,column:cL++});
};
this.outputNumberTest=1;
{var cy=new qx.ui.form.Button(k);
cy.addListener(bF,function(e){var dI=this.trackGui.getMyLoginName();
var dF=true;
var dG=0.4;
var dH=0;
this.sendOutputControl(dI,this.outputNumberTest,dF,dG,dH);
},this);
cJ.add(cy,{row:cz,column:cL++});
};
{var cy=new qx.ui.form.Button(R);
cy.addListener(bF,function(e){var dJ=this.trackGui.getMyLoginName();
this.sendOutputControl(dJ,this.outputNumberTest,false);
},this);
cJ.add(cy,{row:cz,column:cL++});
};
{var cy=new qx.ui.form.Button(D);
cy.addListener(bF,function(e){var dL=this.trackGui.getMyLoginName();
var dM=true;
var dN=bq;
var dK=bd;
this.trackGui.sendDeviceSettingKeyValue(dL,dN,dK,dM);
},this);
cJ.add(cy,{row:cz,column:cL++});
};
cz++;
cL=0;
{var cC=new qx.ui.form.TextField(h);
cC.addListener(bz,function(dO){var dQ=cC.getValue();
var dP=null;
var dR=new net.watchee.GPSData(dQ,dP);
var dS=new net.watchee.DrawingAttributes();
dS.zoomTo=16;
this.trackGui.watchee.getMapManager().addPoi(dR,dS);
},this);
cJ.add(cC,{row:cz,column:cL++});
};
{var ct=new qx.ui.form.SelectBox();
var cK=new qx.ui.form.ListItem(bA);
cK.setUserData(bE,qx.theme.Modern);
ct.add(cK);
var cK=new qx.ui.form.ListItem(bj);
cK.setUserData(bE,qx.theme.Simple);
ct.add(cK);
var cK=new qx.ui.form.ListItem(bk);
cK.setUserData(bE,qx.theme.Classic);
ct.add(cK);
ct.addListener(bJ,function(e){var dU=(e.getData().length==0)?null:e.getData()[0];

if(dU==null)return ;
var dV=dU.getLabel();
var dT=dU.getUserData(bE);

if(dT==null){if(dT==bA)dT=qx.theme.Modern;
else if(dT==bj)dT=qx.theme.Simple;
else if(dT==bk)dT=qx.theme.Classic;
}qx.theme.manager.Meta.getInstance().setTheme(dT);
},this);
cJ.add(ct,{row:cz,column:cL++});
};
cJ.add(new track.devicestable.DevicesTableRemote().create(),{row:++cz,column:0,colSpan:6});
cG.add(cJ);
cG.open();
return cG;
},sendOutputControl:function(dW,dX,dY,ea,eb){var ef=new net.watchee.PropertyCollection();
var eh=dY?net.watchee.RuleTypeEnum.OUTPUT_CTRL.toSetActionString():net.watchee.RuleTypeEnum.OUTPUT_CTRL.toRemoveActionString();
var eg=new net.watchee.PropertyPair(net.watchee.PC_ACTION,eh);
eg.setDurable(true);
ef.add(eg);
var ec=new net.watchee.PropertyPair(bS,dX);
ec.setDurable(true);
ef.add(ec);

if(dY){var ee=new net.watchee.PropertyPair(m,ea);
ee.setDurable(true);
ef.add(ee);

if(eb!==undefined){var ed=new net.watchee.PropertyPair(c,eb);
ed.setDurable(true);
ef.add(ed);
}}this.trackGui.sendDeviceSettings(dW,ef);
},rawSubscribe:function(){var el=this.trackGui.watchee.xbAccess;
var em=null;
el.startAjaxPolling(a,em);
var ek=b;
var ei=self;
var ej=bK;
var en=bp;
el.subscribe(en,ej,bl,ei,ek);
}},destruct:function(){this._disposeFields();
this._disposeObjects();
}});
})();
(function(){var k="",j='</div>',i="Up",h="none",g="keypress",f='.qxconsole .messages{background:white;height:100%;width:100%;overflow:auto;}',d="Enter",c="px",b='.qxconsole .messages .user-result{background:white}',a='.qxconsole .messages .level-error{background:#FFE2D5}',V="div",U="user-command",T='<div class="command">',S='.qxconsole .command input:focus{outline:none;}',R='.qxconsole .messages .type-key{color:#565656;font-style:italic}',Q='.qxconsole .messages .type-instance{color:#565656;font-weight:bold}',P='.qxconsole .messages div{padding:0px 4px;}',O='.qxconsole .messages .level-debug{background:white}',N='.qxconsole .messages .type-class{color:#5F3E8A;font-weight:bold}',M="DIV",r='.qxconsole .messages .level-user{background:#E3EFE9}',s='<div class="qxconsole">',p="D",q='.qxconsole .messages .type-map{color:#CC3E8A;font-weight:bold;}',n='.qxconsole .messages .type-string{color:black;font-weight:normal;}',o='.qxconsole .control a{text-decoration:none;color:black;}',l='<div class="messages">',m='.qxconsole .messages .type-boolean{color:#15BC91;font-weight:normal;}',t='<input type="text"/>',u="clear",B='.qxconsole .command input{width:100%;border:0 none;font-family:Consolas,Monaco,monospace;font-size:11px;line-height:1.2;}',z='.qxconsole .messages .type-array{color:#CC3E8A;font-weight:bold;}',F='.qxconsole{z-index:10000;width:600px;height:300px;top:0px;right:0px;position:absolute;border-left:1px solid black;color:black;border-bottom:1px solid black;color:black;font-family:Consolas,Monaco,monospace;font-size:11px;line-height:1.2;}',D='.qxconsole .command{background:white;padding:2px 4px;border-top:1px solid black;}',I='.qxconsole .messages .user-command{color:blue}',H="F7",w="qx.log.appender.Console",L='.qxconsole .messages .level-info{background:#DEEDFA}',K="block",J='.qxconsole .messages .level-warn{background:#FFF7D5}',v='.qxconsole .messages .type-stringify{color:#565656;font-weight:bold}',x='.qxconsole .messages .user-error{background:#FFE2D5}',y='.qxconsole .control{background:#cdcdcd;border-bottom:1px solid black;padding:4px 8px;}',A='<div class="control"><a href="javascript:qx.log.appender.Console.clear()">Clear</a> | <a href="javascript:qx.log.appender.Console.toggle()">Hide</a></div>',C=">>> ",E="Down",G='.qxconsole .messages .type-number{color:#155791;font-weight:normal;}';
qx.Class.define(w,{statics:{init:function(){var W=[F,y,o,f,P,I,b,x,O,L,J,a,r,n,G,m,z,q,R,N,Q,v,D,B,S];
qx.bom.Stylesheet.createElement(W.join(k));
var Y=[s,A,l,j,T,t,j,j];
var ba=document.createElement(M);
ba.innerHTML=Y.join(k);
var X=ba.firstChild;
document.body.appendChild(ba.firstChild);
this.__uC=X;
this.__cq=X.childNodes[1];
this.__uD=X.childNodes[2].firstChild;
this.__ke();
qx.log.Logger.register(this);
qx.core.ObjectRegistry.register(this);
},dispose:function(){qx.event.Registration.removeListener(document.documentElement,g,this.__gr,this);
qx.log.Logger.unregister(this);
},clear:function(){this.__cq.innerHTML=k;
},process:function(bb){this.__cq.appendChild(qx.log.appender.Util.toHtml(bb));
this.__uE();
},__uE:function(){this.__cq.scrollTop=this.__cq.scrollHeight;
},__eV:true,toggle:function(){if(!this.__uC){this.init();
}else if(this.__uC.style.display==h){this.show();
}else{this.__uC.style.display=h;
}},show:function(){if(!this.__uC){this.init();
}else{this.__uC.style.display=K;
this.__cq.scrollTop=this.__cq.scrollHeight;
}},__uF:[],execute:function(){var be=this.__uD.value;

if(be==k){return;
}
if(be==u){return this.clear();
}var bc=document.createElement(V);
bc.innerHTML=qx.log.appender.Util.escapeHTML(C+be);
bc.className=U;
this.__uF.push(be);
this.__uG=this.__uF.length;
this.__cq.appendChild(bc);
this.__uE();

try{var bd=window.eval(be);
}catch(bf){qx.log.Logger.error(bf);
}
if(bd!==undefined){qx.log.Logger.debug(bd);
}},__ke:function(e){this.__cq.style.height=(this.__uC.clientHeight-this.__uC.firstChild.offsetHeight-this.__uC.lastChild.offsetHeight)+c;
},__gr:function(e){var bh=e.getKeyIdentifier();
if((bh==H)||(bh==p&&e.isCtrlPressed())){this.toggle();
e.preventDefault();
}if(!this.__uC){return;
}if(!qx.dom.Hierarchy.contains(this.__uC,e.getTarget())){return;
}if(bh==d&&this.__uD.value!=k){this.execute();
this.__uD.value=k;
}if(bh==i||bh==E){this.__uG+=bh==i?-1:1;
this.__uG=Math.min(Math.max(0,this.__uG),this.__uF.length);
var bg=this.__uF[this.__uG];
this.__uD.value=bg||k;
this.__uD.select();
}}},defer:function(bi){qx.event.Registration.addListener(document.documentElement,g,bi.__gr,bi);
}});
})();
(function(){var l="'>",k="[",h=", ",g="</span>",f="<span class='type-",e="</span> ",d="}",c="",b="]",a="\n",K="{",J="map",I="function",H="<span class='object'>",G="]:",F="&gt;",E="<span class='object' title='Object instance with hash code: ",D="string",C="level-",B="0",s="&lt;",t="<span class='offset'>",q=":",r="qx.log.appender.Util",o="&amp;",p="&#39;",m="DIV",n="<span>",u="&quot;",v="<span class='type-key'>",x="</span>:<span class='type-",w="</span>: ",z=" ",y="]</span>: ",A="?";
qx.Class.define(r,{statics:{toHtml:function(L){var V=[];
var S,U,N,P;
V.push(t,this.formatOffset(L.offset,6),e);

if(L.object){var M=L.win.qx.core.ObjectRegistry.fromHashCode(L.object);

if(M){V.push(E+M.$$hash+l,M.classname,k,M.$$hash,y);
}}else if(L.clazz){V.push(H+L.clazz.classname,w);
}var O=L.items;

for(var i=0,T=O.length;i<T;i++){S=O[i];
U=S.text;

if(U instanceof Array){var P=[];

for(var j=0,R=U.length;j<R;j++){N=U[j];

if(typeof N===D){P.push(n+this.escapeHTML(N)+g);
}else if(N.key){P.push(v+N.key+x+N.type+l+this.escapeHTML(N.text)+g);
}else{P.push(f+N.type+l+this.escapeHTML(N.text)+g);
}}V.push(f+S.type+l);

if(S.type===J){V.push(K,P.join(h),d);
}else{V.push(k,P.join(h),b);
}V.push(g);
}else{V.push(f+S.type+l+this.escapeHTML(U)+e);
}}var Q=document.createElement(m);
Q.innerHTML=V.join(c);
Q.className=C+L.level;
return Q;
},formatOffset:function(W,length){var ba=W.toString();
var X=(length||6)-ba.length;
var Y=c;

for(var i=0;i<X;i++){Y+=B;
}return Y+ba;
},FORMAT_STACK:null,escapeHTML:function(bb){return String(bb).replace(/[<>&"']/g,this.__uH);
},__uH:function(bc){var bd={"<":s,">":F,"&":o,"'":p,'"':u};
return bd[bc]||A;
},toText:function(be){return this.toTextArray(be).join(z);
},toTextArray:function(bf){var bn=[];
bn.push(this.formatOffset(bf.offset,6));

if(bf.object){var bg=bf.win.qx.core.ObjectRegistry.fromHashCode(bf.object);

if(bg){bn.push(bg.classname+k+bg.$$hash+G);
}}else if(bf.clazz){bn.push(bf.clazz.classname+q);
}var bh=bf.items;
var bk,bm;

for(var i=0,bl=bh.length;i<bl;i++){bk=bh[i];
bm=bk.text;

if(bk.trace&&bk.trace.length>0){if(typeof (this.FORMAT_STACK)==I){bm+=a+this.FORMAT_STACK(bk.trace);
}else{bm+=a+bk.trace;
}}
if(bm instanceof Array){var bi=[];

for(var j=0,bj=bm.length;j<bj;j++){bi.push(bm[j].text);
}
if(bk.type===J){bn.push(K,bi.join(h),d);
}else{bn.push(k,bi.join(h),b);
}}else{bn.push(bm);
}}return bn;
}}});
})();
(function(){var k="_applyBoxShadow",j="px ",i="Integer",h="shadowHorizontalLength",g="box-shadow",f="-webkit-box-shadow",e="shadowVerticalLength",d="-moz-box-shadow",c="shorthand",b="qx.ui.decoration.MBoxShadow",a="Color";
qx.Mixin.define(b,{properties:{shadowHorizontalLength:{nullable:true,check:i,apply:k},shadowVerticalLength:{nullable:true,check:i,apply:k},shadowBlurRadius:{nullable:true,check:i,apply:k},shadowColor:{nullable:true,check:a,apply:k},shadowLength:{group:[h,e],mode:c}},members:{_styleBoxShadow:function(l){{var m=qx.theme.manager.Color.getInstance();
var p=m.resolve(this.getShadowColor());
};

if(p!=null){var q=this.getShadowVerticalLength()||0;
var n=this.getShadowHorizontalLength()||0;
var blur=this.getShadowBlurRadius()||0;
var o=n+j+q+j+blur+j+p;
l[d]=o;
l[f]=o;
l[g]=o;
}},_applyBoxShadow:function(){}}});
})();
(function(){var c="px",b="qx.ui.decoration.Background",a="absolute";
qx.Class.define(b,{extend:qx.ui.decoration.Abstract,include:[qx.ui.decoration.MBackgroundImage,qx.ui.decoration.MBackgroundColor],construct:function(d){qx.ui.decoration.Abstract.call(this);

if(d!=null){this.setBackgroundColor(d);
}},members:{__kM:null,_getDefaultInsets:function(){return {top:0,right:0,bottom:0,left:0};
},_isInitialized:function(){return !!this.__kM;
},getMarkup:function(e){if(this.__kM){return this.__kM;
}var f={position:a,top:0,left:0};
var g=this._generateBackgroundMarkup(f);
return this.__kM=g;
},resize:function(h,i,j){var k=this.getInsets();
h.style.width=(i-k.left-k.right)+c;
h.style.height=(j-k.top-k.bottom)+c;
h.style.left=-k.left+c;
h.style.top=-k.top+c;
},tint:function(l,m){this._tintBackgroundColor(l,m,l.style);
}},destruct:function(){this.__kM=null;
}});
})();
(function(){var j="_applyLinearBackgroundGradient",i=" ",h=")",g="engine.name",f="horizontal",e=",",d=" 0",c="px",b="browser.name",a="0",K="shorthand",J="Color",I="vertical",H="",G="Number",F="webkit",E="%",D="),to(",C="from(",B="background-image",q="engine.version",r="-moz-",o="-webkit-gradient(linear,",p="startColorPosition",m="-o-",n="deg, ",k="startColor",l="ie",s="qx.ui.decoration.MLinearBackgroundGradient",t="endColorPosition",w="opera",v="linear-gradient(",y="endColor",x="-ms-",A="gecko",z="background",u="-webkit-";
qx.Mixin.define(s,{properties:{startColor:{check:J,nullable:true,apply:j},endColor:{check:J,nullable:true,apply:j},orientation:{check:[f,I],init:I,apply:j},startColorPosition:{check:G,init:0,apply:j},endColorPosition:{check:G,init:100,apply:j},colorPositionUnit:{check:[c,E],init:E,apply:j},gradientStart:{group:[k,p],mode:K},gradientEnd:{group:[y,t],mode:K}},members:{_styleLinearBackgroundGradient:function(L){{var O=qx.theme.manager.Color.getInstance();
var V=O.resolve(this.getStartColor());
var Q=O.resolve(this.getEndColor());
};
var W=this.getColorPositionUnit();
if(qx.core.Environment.get(g)==F&&parseFloat(qx.core.Environment.get(q))<534.16){W=W===c?H:W;

if(this.getOrientation()==f){var U=this.getStartColorPosition()+W+d+W;
var T=this.getEndColorPosition()+W+d+W;
}else{var U=a+W+i+this.getStartColorPosition()+W;
var T=a+W+i+this.getEndColorPosition()+W;
}var R=C+V+D+Q+h;
var P=o+U+e+T+e+R+h;
L[z]=P;
}else{var X=this.getOrientation()==f?0:270;
var N=V+i+this.getStartColorPosition()+W;
var M=Q+i+this.getEndColorPosition()+W;
var S=H;

if(qx.core.Environment.get(g)==A){S=r;
}else if(qx.core.Environment.get(b)==w){S=m;
}else if(qx.core.Environment.get(b)==l){S=x;
}else if(qx.core.Environment.get(g)==F){S=u;
}L[B]=S+v+X+n+N+e+M+h;
}},_resizeLinearBackgroundGradient:function(Y,ba,bb){var bc=this.getInsets();
ba-=bc.left+bc.right;
bb-=bc.top+bc.bottom;
return {left:bc.left,top:bc.top,width:ba,height:bb};
},_applyLinearBackgroundGradient:function(){}}});
})();
(function(){var j="px",i="Integer",h="_applyBorderRadius",g="radiusTopRight",f="radiusTopLeft",e="-webkit-border-bottom-left-radius",d="-webkit-background-clip",c="radiusBottomRight",b="-webkit-border-bottom-right-radius",a="border-top-left-radius",w="border-top-right-radius",v="border-bottom-left-radius",u="radiusBottomLeft",t="-webkit-border-top-left-radius",s="shorthand",r="-moz-border-radius-bottomright",q="padding-box",p="border-bottom-right-radius",o="qx.ui.decoration.MBorderRadius",n="-moz-border-radius-topright",l="-webkit-border-top-right-radius",m="-moz-border-radius-topleft",k="-moz-border-radius-bottomleft";
qx.Mixin.define(o,{properties:{radiusTopLeft:{nullable:true,check:i,apply:h},radiusTopRight:{nullable:true,check:i,apply:h},radiusBottomLeft:{nullable:true,check:i,apply:h},radiusBottomRight:{nullable:true,check:i,apply:h},radius:{group:[f,g,c,u],mode:s}},members:{_styleBorderRadius:function(x){x[d]=q;
var y=this.getRadiusTopLeft();

if(y>0){x[m]=y+j;
x[t]=y+j;
x[a]=y+j;
}y=this.getRadiusTopRight();

if(y>0){x[n]=y+j;
x[l]=y+j;
x[w]=y+j;
}y=this.getRadiusBottomLeft();

if(y>0){x[k]=y+j;
x[e]=y+j;
x[v]=y+j;
}y=this.getRadiusBottomRight();

if(y>0){x[r]=y+j;
x[b]=y+j;
x[p]=y+j;
}},_applyBorderRadius:function(){}}});
})();
(function(){var cJ="solid",cI="invalid",cH="scale",cG="border-main",cF="border-invalid",cE="shadow",cD="border-separator",cC="checkbox-hovered",cB="button-start",cA="button-end",bK="background-light",bJ="tabview-background",bI="repeat-x",bH="radiobutton",bG="button-css",bF="border-input",bE="border-inner-input",bD="border-inner-scrollbar",bC="radiobutton-checked",bB="window-border",cQ="tabview-inactive",cR="checkbox",cO="radiobutton-disabled",cP="radiobutton-hovered-invalid",cM="tabview-page-button-top-active-css",cN="button-border-disabled",cK="tabview-page-button-top-inactive-css",cL="decoration/form/input.png",cS="border-toolbar-border-inner",cT="input-css",cj="border-toolbar-button-outer",ci="border-disabled",cl="background-pane",ck="checkbox-disabled-border",cn="button-hovered-end",cm="repeat-y",cp="border-dragover",co="button-hovered-start",ch="progressive-table-header-border-right",cg="decoration/scrollbar/scrollbar-button-bg-vertical.png",k="radiobutton-background",l="checkbox-focus",m="scrollbar-slider-horizontal-css",n="menu-end",o="decoration/selection.png",p="horizontal",q="table-header-start",r="decoration/scrollbar/scrollbar-button-bg-horizontal.png",s="decoration/form/input-focused.png",t="checkbox-hovered-invalid",di="decoration/table/header-cell.png",dh="tabview-inactive-start",dg="table-header-end",df="border-button",dm="border-focused-invalid",dl="button-focused-css",dk="checkbox-border",dj="tabview-start",dp="checkbox-start",dn="decoration/tabview/tab-button-top-active.png",bb="group-background",bc="decoration/form/button-c.png",Y="keyboard-focus",ba="button-disabled-start",bf="selected-end",bg="table-header-hovered",bd="decoration/groupbox/groupbox.png",be="decoration/pane/pane.png",W="decoration/menu/background.png",X="tooltip-error",J="decoration/toolbar/toolbar-part.gif",I="input-focused-css",L="decoration/menu/bar-background.png",K="window-border-caption",F="radiobutton-hovered",E="decoration/tabview/tab-button-bottom-active.png",H="radiobutton-checked-focused",G="groupitem-end",D="button-disabled-css",C="group-border",bl="scrollbar-slider-vertical-css",bm="decoration/form/button-checked.png",bn="window-css",bo="selected-start",bh="window-resize-frame-css",bi="tabview-end",bj="window-statusbar-background",bk="decoration/scrollbar/scrollbar-bg-vertical.png",bp="button-pressed-css",bq="toolbar-button-hovered-css",T="window-caption-active-end",S="dotted",R="checkbox-disabled-end",Q="window-caption-active-start",P="button-focused",O="menu-start",N="decoration/form/tooltip-error.png",M="window-captionbar-active-css",V="qx/decoration/Modern",U="border-toolbar-separator-left",br="decoration/scrollbar/scrollbar-bg-horizontal.png",bs="decoration/tabview/tab-button-left-active.png",bt="decoration/tabview/tab-button-right-inactive.png",bu="decoration/tabview/tab-button-bottom-inactive.png",bv="decoration/form/button-disabled.png",bw="decoration/form/button-pressed.png",bx="background-splitpane",by="decoration/form/button-checked-focused.png",bz="px",bA="decoration/window/statusbar.png",bO="input-border-disabled",bN="checkbox-inner",bM="scrollbar-horizontal-css",bL="button-disabled-end",bS="center",bR="toolbar-end",bQ="groupitem-start",bP="decoration/form/button-hovered.png",bU="checkbox-hovered-inner",bT="input-focused-start",cc="scrollbar-start",cd="scrollbar-slider-start",ca="radiobutton-checked-disabled",cb="checkbox-focused",bX="qx.theme.modern.Decoration",bY="decoration/form/button.png",bV="decoration/app-header.png",bW="decoration/form/button-focused.png",ce="radiobutton-checked-hovered",cf="button-hovered-css",ct="checkbox-disabled-inner",cs="border-toolbar-separator-right",cv="border-focused",cu="decoration/shadow/shadow.png",cx="scrollbar-end",cw="decoration/group-item.png",cz="window-caption-inactive-end",cy="checkbox-end",cr="tabview-inactive-end",cq="input-end",db="button-checked-focused-css",dc="decoration/tabview/tab-button-left-inactive.png",dd="input-focused-inner-invalid",de="menu-separator-top",cW="window-caption-inactive-start",cX="scrollbar-slider-end",cY="decoration/window/captionbar-inactive.png",da="decoration/tabview/tab-button-top-inactive.png",cU="pane-end",cV="input-focused-end",j="decoration/form/tooltip-error-arrow.png",i="menubar-start",h="toolbar-start",g="checkbox-disabled-start",f="radiobutton-focused",e="pane-start",d="table-focus-indicator",c="button-checked-css",b="decoration/form/button-checked-c.png",a="menu-separator-bottom",w="decoration/shadow/shadow-small.png",x="input-start",u="decoration/tabview/tabview-pane.png",v="decoration/window/captionbar-active.png",A="decoration/tabview/tab-button-right-active.png",B="no-repeat",y="decoration/toolbar/toolbar-gradient.png",z="checkbox-hovered-inner-invalid";
qx.Theme.define(bX,{aliases:{decoration:V},decorations:{"main":{decorator:qx.ui.decoration.Uniform,style:{width:1,color:cG}},"selected":{decorator:qx.ui.decoration.Background,style:{backgroundImage:o,backgroundRepeat:cH}},"selected-css":{decorator:[qx.ui.decoration.MLinearBackgroundGradient],style:{startColorPosition:0,endColorPosition:100,startColor:bo,endColor:bf}},"selected-dragover":{decorator:qx.ui.decoration.Single,style:{backgroundImage:o,backgroundRepeat:cH,bottom:[2,cJ,cp]}},"dragover":{decorator:qx.ui.decoration.Single,style:{bottom:[2,cJ,cp]}},"pane":{decorator:qx.ui.decoration.Grid,style:{baseImage:be,insets:[0,2,3,0]}},"pane-css":{decorator:[qx.ui.decoration.MSingleBorder,qx.ui.decoration.MBorderRadius,qx.ui.decoration.MBoxShadow,qx.ui.decoration.MLinearBackgroundGradient],style:{width:1,color:bJ,radius:3,shadowColor:cE,shadowBlurRadius:2,shadowLength:0,gradientStart:[e,0],gradientEnd:[cU,100]}},"group":{decorator:qx.ui.decoration.Grid,style:{baseImage:bd}},"group-css":{decorator:[qx.ui.decoration.MBackgroundColor,qx.ui.decoration.MBorderRadius,qx.ui.decoration.MSingleBorder],style:{backgroundColor:bb,radius:4,color:C,width:1}},"border-invalid":{decorator:qx.ui.decoration.Beveled,style:{outerColor:cI,innerColor:bE,innerOpacity:0.5,backgroundImage:cL,backgroundRepeat:bI,backgroundColor:bK}},"keyboard-focus":{decorator:qx.ui.decoration.Single,style:{width:1,color:Y,style:S}},"radiobutton":{decorator:[qx.ui.decoration.MDoubleBorder,qx.ui.decoration.MBackgroundColor,qx.ui.decoration.MBorderRadius,qx.ui.decoration.MBoxShadow],style:{backgroundColor:k,radius:5,width:1,innerWidth:2,color:dk,innerColor:k,shadowLength:0,shadowBlurRadius:0,shadowColor:l,insetLeft:5}},"radiobutton-checked":{include:bH,style:{backgroundColor:bC}},"radiobutton-checked-focused":{include:bC,style:{shadowBlurRadius:4}},"radiobutton-checked-hovered":{include:bC,style:{innerColor:cC}},"radiobutton-focused":{include:bH,style:{shadowBlurRadius:4}},"radiobutton-hovered":{include:bH,style:{backgroundColor:cC,innerColor:cC}},"radiobutton-disabled":{include:bH,style:{innerColor:cO,backgroundColor:cO,color:ck}},"radiobutton-checked-disabled":{include:cO,style:{backgroundColor:ca}},"radiobutton-invalid":{include:bH,style:{color:cI}},"radiobutton-checked-invalid":{include:bC,style:{color:cI}},"radiobutton-checked-focused-invalid":{include:H,style:{color:cI,shadowColor:cI}},"radiobutton-checked-hovered-invalid":{include:ce,style:{color:cI,innerColor:cP}},"radiobutton-focused-invalid":{include:f,style:{color:cI,shadowColor:cI}},"radiobutton-hovered-invalid":{include:F,style:{color:cI,innerColor:cP,backgroundColor:cP}},"separator-horizontal":{decorator:qx.ui.decoration.Single,style:{widthLeft:1,colorLeft:cD}},"separator-vertical":{decorator:qx.ui.decoration.Single,style:{widthTop:1,colorTop:cD}},"tooltip-error":{decorator:qx.ui.decoration.Grid,style:{baseImage:N,insets:[2,5,5,2]}},"tooltip-error-css":{decorator:[qx.ui.decoration.MBackgroundColor,qx.ui.decoration.MBorderRadius,qx.ui.decoration.MBoxShadow],style:{backgroundColor:X,radius:4,shadowColor:cE,shadowBlurRadius:2,shadowLength:1}},"tooltip-error-arrow":{decorator:qx.ui.decoration.Background,style:{backgroundImage:j,backgroundPositionY:bS,backgroundRepeat:B,insets:[0,0,0,10]}},"shadow-window":{decorator:qx.ui.decoration.Grid,style:{baseImage:cu,insets:[4,8,8,4]}},"shadow-window-css":{decorator:[qx.ui.decoration.MBoxShadow,qx.ui.decoration.MBackgroundColor],style:{shadowColor:cE,shadowBlurRadius:2,shadowLength:1}},"shadow-popup":{decorator:qx.ui.decoration.Grid,style:{baseImage:w,insets:[0,3,3,0]}},"popup-css":{decorator:[qx.ui.decoration.MSingleBorder,qx.ui.decoration.MBoxShadow,qx.ui.decoration.MBackgroundColor],style:{width:1,color:cG,shadowColor:cE,shadowBlurRadius:3,shadowLength:1}},"scrollbar-horizontal":{decorator:qx.ui.decoration.Background,style:{backgroundImage:br,backgroundRepeat:bI}},"scrollbar-vertical":{decorator:qx.ui.decoration.Background,style:{backgroundImage:bk,backgroundRepeat:cm}},"scrollbar-slider-horizontal":{decorator:qx.ui.decoration.Beveled,style:{backgroundImage:r,backgroundRepeat:cH,outerColor:cG,innerColor:bD,innerOpacity:0.5}},"scrollbar-slider-horizontal-disabled":{decorator:qx.ui.decoration.Beveled,style:{backgroundImage:r,backgroundRepeat:cH,outerColor:ci,innerColor:bD,innerOpacity:0.3}},"scrollbar-slider-vertical":{decorator:qx.ui.decoration.Beveled,style:{backgroundImage:cg,backgroundRepeat:cH,outerColor:cG,innerColor:bD,innerOpacity:0.5}},"scrollbar-slider-vertical-disabled":{decorator:qx.ui.decoration.Beveled,style:{backgroundImage:cg,backgroundRepeat:cH,outerColor:ci,innerColor:bD,innerOpacity:0.3}},"scrollbar-horizontal-css":{decorator:[qx.ui.decoration.MLinearBackgroundGradient],style:{gradientStart:[cc,0],gradientEnd:[cx,100]}},"scrollbar-vertical-css":{include:bM,style:{orientation:p}},"scrollbar-slider-horizontal-css":{decorator:[qx.ui.decoration.MSingleBorder,qx.ui.decoration.MLinearBackgroundGradient],style:{gradientStart:[cd,0],gradientEnd:[cX,100],color:cG,width:1}},"scrollbar-slider-vertical-css":{include:m,style:{orientation:p}},"scrollbar-slider-horizontal-disabled-css":{include:m,style:{color:cN}},"scrollbar-slider-vertical-disabled-css":{include:bl,style:{color:cN}},"button-css":{decorator:[qx.ui.decoration.MSingleBorder,qx.ui.decoration.MLinearBackgroundGradient,qx.ui.decoration.MBorderRadius],style:{radius:3,color:df,width:1,startColor:cB,endColor:cA,startColorPosition:35,endColorPosition:100}},"button-disabled-css":{include:bG,style:{color:cN,startColor:ba,endColor:bL}},"button-hovered-css":{include:bG,style:{startColor:co,endColor:cn}},"button-checked-css":{include:bG,style:{endColor:cB,startColor:cA}},"button-pressed-css":{include:bG,style:{endColor:co,startColor:cn}},"button-focused-css":{decorator:[qx.ui.decoration.MDoubleBorder,qx.ui.decoration.MLinearBackgroundGradient,qx.ui.decoration.MBorderRadius],style:{radius:3,color:df,width:1,innerColor:P,innerWidth:2,startColor:cB,endColor:cA,startColorPosition:30,endColorPosition:100}},"button-checked-focused-css":{include:dl,style:{endColor:cB,startColor:cA}},"button-invalid-css":{include:bG,style:{color:cF}},"button-disabled-invalid-css":{include:D,style:{color:cF}},"button-hovered-invalid-css":{include:cf,style:{color:cF}},"button-checked-invalid-css":{include:c,style:{color:cF}},"button-pressed-invalid-css":{include:bp,style:{color:cF}},"button-focused-invalid-css":{include:dl,style:{color:cF}},"button-checked-focused-invalid-css":{include:db,style:{color:cF}},"button":{decorator:qx.ui.decoration.Grid,style:{baseImage:bY,insets:2}},"button-disabled":{decorator:qx.ui.decoration.Grid,style:{baseImage:bv,insets:2}},"button-focused":{decorator:qx.ui.decoration.Grid,style:{baseImage:bW,insets:2}},"button-hovered":{decorator:qx.ui.decoration.Grid,style:{baseImage:bP,insets:2}},"button-pressed":{decorator:qx.ui.decoration.Grid,style:{baseImage:bw,insets:2}},"button-checked":{decorator:qx.ui.decoration.Grid,style:{baseImage:bm,insets:2}},"button-checked-focused":{decorator:qx.ui.decoration.Grid,style:{baseImage:by,insets:2}},"button-invalid-shadow":{decorator:qx.ui.decoration.Single,style:{color:cI,width:1}},"checkbox-invalid-shadow":{decorator:qx.ui.decoration.Beveled,style:{outerColor:cI,innerColor:dm,insets:[0]}},"checkbox":{decorator:[qx.ui.decoration.MDoubleBorder,qx.ui.decoration.MLinearBackgroundGradient,qx.ui.decoration.MBoxShadow],style:{width:1,color:dk,innerWidth:1,innerColor:bN,gradientStart:[dp,0],gradientEnd:[cy,100],shadowLength:0,shadowBlurRadius:0,shadowColor:l,insetLeft:4}},"checkbox-hovered":{include:cR,style:{innerColor:bU,gradientStart:[cC,0],gradientEnd:[cC,100]}},"checkbox-focused":{include:cR,style:{shadowBlurRadius:4}},"checkbox-disabled":{include:cR,style:{color:ck,innerColor:ct,gradientStart:[g,0],gradientEnd:[R,100]}},"checkbox-invalid":{include:cR,style:{color:cI}},"checkbox-hovered-invalid":{include:cC,style:{color:cI,innerColor:z,gradientStart:[t,0],gradientEnd:[t,100]}},"checkbox-focused-invalid":{include:cb,style:{color:cI,shadowColor:cI}},"input-css":{decorator:[qx.ui.decoration.MDoubleBorder,qx.ui.decoration.MLinearBackgroundGradient,qx.ui.decoration.MBackgroundColor],style:{color:bF,innerColor:bE,innerWidth:1,width:1,backgroundColor:bK,startColor:x,endColor:cq,startColorPosition:0,endColorPosition:12,colorPositionUnit:bz}},"border-invalid-css":{include:cT,style:{color:cF}},"input-focused-css":{include:cT,style:{startColor:bT,innerColor:cV,endColorPosition:4}},"input-focused-invalid-css":{include:I,style:{innerColor:dd,color:cF}},"input-disabled-css":{include:cT,style:{color:bO}},"input":{decorator:qx.ui.decoration.Beveled,style:{outerColor:bF,innerColor:bE,innerOpacity:0.5,backgroundImage:cL,backgroundRepeat:bI,backgroundColor:bK}},"input-focused":{decorator:qx.ui.decoration.Beveled,style:{outerColor:bF,innerColor:cv,backgroundImage:s,backgroundRepeat:bI,backgroundColor:bK}},"input-focused-invalid":{decorator:qx.ui.decoration.Beveled,style:{outerColor:cI,innerColor:dm,backgroundImage:s,backgroundRepeat:bI,backgroundColor:bK,insets:[2]}},"input-disabled":{decorator:qx.ui.decoration.Beveled,style:{outerColor:ci,innerColor:bE,innerOpacity:0.5,backgroundImage:cL,backgroundRepeat:bI,backgroundColor:bK}},"toolbar":{decorator:qx.ui.decoration.Background,style:{backgroundImage:y,backgroundRepeat:cH}},"toolbar-css":{decorator:[qx.ui.decoration.MLinearBackgroundGradient],style:{startColorPosition:40,endColorPosition:60,startColor:h,endColor:bR}},"toolbar-button-hovered":{decorator:qx.ui.decoration.Beveled,style:{outerColor:cj,innerColor:cS,backgroundImage:bc,backgroundRepeat:cH}},"toolbar-button-checked":{decorator:qx.ui.decoration.Beveled,style:{outerColor:cj,innerColor:cS,backgroundImage:b,backgroundRepeat:cH}},"toolbar-button-hovered-css":{decorator:[qx.ui.decoration.MDoubleBorder,qx.ui.decoration.MLinearBackgroundGradient,qx.ui.decoration.MBorderRadius],style:{color:cj,width:1,innerWidth:1,innerColor:cS,radius:2,gradientStart:[cB,30],gradientEnd:[cA,100]}},"toolbar-button-checked-css":{include:bq,style:{gradientStart:[cA,30],gradientEnd:[cB,100]}},"toolbar-separator":{decorator:qx.ui.decoration.Single,style:{widthLeft:1,widthRight:1,colorLeft:U,colorRight:cs,styleLeft:cJ,styleRight:cJ}},"toolbar-part":{decorator:qx.ui.decoration.Background,style:{backgroundImage:J,backgroundRepeat:cm}},"tabview-pane":{decorator:qx.ui.decoration.Grid,style:{baseImage:u,insets:[4,6,7,4]}},"tabview-pane-css":{decorator:[qx.ui.decoration.MBorderRadius,qx.ui.decoration.MLinearBackgroundGradient,qx.ui.decoration.MSingleBorder],style:{width:1,color:bB,radius:3,gradientStart:[dj,90],gradientEnd:[bi,100]}},"tabview-page-button-top-active":{decorator:qx.ui.decoration.Grid,style:{baseImage:dn}},"tabview-page-button-top-inactive":{decorator:qx.ui.decoration.Grid,style:{baseImage:da}},"tabview-page-button-bottom-active":{decorator:qx.ui.decoration.Grid,style:{baseImage:E}},"tabview-page-button-bottom-inactive":{decorator:qx.ui.decoration.Grid,style:{baseImage:bu}},"tabview-page-button-left-active":{decorator:qx.ui.decoration.Grid,style:{baseImage:bs}},"tabview-page-button-left-inactive":{decorator:qx.ui.decoration.Grid,style:{baseImage:dc}},"tabview-page-button-right-active":{decorator:qx.ui.decoration.Grid,style:{baseImage:A}},"tabview-page-button-right-inactive":{decorator:qx.ui.decoration.Grid,style:{baseImage:bt}},"tabview-page-button-top-active-css":{decorator:[qx.ui.decoration.MBorderRadius,qx.ui.decoration.MSingleBorder,qx.ui.decoration.MBackgroundColor,qx.ui.decoration.MBoxShadow],style:{radius:[3,3,0,0],width:[1,1,0,1],color:bJ,backgroundColor:dj,shadowLength:1,shadowColor:cE,shadowBlurRadius:2}},"tabview-page-button-top-inactive-css":{decorator:[qx.ui.decoration.MBorderRadius,qx.ui.decoration.MSingleBorder,qx.ui.decoration.MLinearBackgroundGradient],style:{radius:[3,3,0,0],color:cQ,colorBottom:bJ,width:1,gradientStart:[dh,0],gradientEnd:[cr,100]}},"tabview-page-button-bottom-active-css":{include:cM,style:{radius:[0,0,3,3],width:[0,1,1,1],backgroundColor:dh}},"tabview-page-button-bottom-inactive-css":{include:cK,style:{radius:[0,0,3,3],width:[0,1,1,1],colorBottom:cQ,colorTop:bJ}},"tabview-page-button-left-active-css":{include:cM,style:{radius:[3,0,0,3],width:[1,0,1,1],shadowLength:0,shadowBlurRadius:0}},"tabview-page-button-left-inactive-css":{include:cK,style:{radius:[3,0,0,3],width:[1,0,1,1],colorBottom:cQ,colorRight:bJ}},"tabview-page-button-right-active-css":{include:cM,style:{radius:[0,3,3,0],width:[1,1,1,0],shadowLength:0,shadowBlurRadius:0}},"tabview-page-button-right-inactive-css":{include:cK,style:{radius:[0,3,3,0],width:[1,1,1,0],colorBottom:cQ,colorLeft:bJ}},"splitpane":{decorator:qx.ui.decoration.Uniform,style:{backgroundColor:cl,width:3,color:bx,style:cJ}},"window":{decorator:qx.ui.decoration.Single,style:{backgroundColor:cl,width:1,color:cG,widthTop:0}},"window-captionbar-active":{decorator:qx.ui.decoration.Grid,style:{baseImage:v}},"window-captionbar-inactive":{decorator:qx.ui.decoration.Grid,style:{baseImage:cY}},"window-statusbar":{decorator:qx.ui.decoration.Grid,style:{baseImage:bA}},"window-css":{decorator:[qx.ui.decoration.MBorderRadius,qx.ui.decoration.MBoxShadow,qx.ui.decoration.MSingleBorder],style:{radius:[5,5,0,0],shadowBlurRadius:4,shadowLength:2,shadowColor:cE}},"window-incl-statusbar-css":{include:bn,style:{radius:[5,5,5,5]}},"window-resize-frame-css":{decorator:[qx.ui.decoration.MBorderRadius,qx.ui.decoration.MSingleBorder],style:{radius:[5,5,0,0],width:1,color:cG}},"window-resize-frame-incl-statusbar-css":{include:bh,style:{radius:[5,5,5,5]}},"window-captionbar-active-css":{decorator:[qx.ui.decoration.MSingleBorder,qx.ui.decoration.MBorderRadius,qx.ui.decoration.MLinearBackgroundGradient],style:{width:1,color:bB,colorBottom:K,radius:[5,5,0,0],gradientStart:[Q,30],gradientEnd:[T,70]}},"window-captionbar-inactive-css":{include:M,style:{gradientStart:[cW,30],gradientEnd:[cz,70]}},"window-statusbar-css":{decorator:[qx.ui.decoration.MBackgroundColor,qx.ui.decoration.MSingleBorder,qx.ui.decoration.MBorderRadius],style:{backgroundColor:bj,width:[0,1,1,1],color:bB,radius:[0,0,5,5]}},"window-pane-css":{decorator:[qx.ui.decoration.MSingleBorder,qx.ui.decoration.MBackgroundColor],style:{backgroundColor:cl,width:1,color:bB,widthTop:0}},"table":{decorator:qx.ui.decoration.Single,style:{width:1,color:cG,style:cJ}},"table-statusbar":{decorator:qx.ui.decoration.Single,style:{widthTop:1,colorTop:cG,style:cJ}},"table-scroller-header":{decorator:qx.ui.decoration.Single,style:{backgroundImage:di,backgroundRepeat:cH,widthBottom:1,colorBottom:cG,style:cJ}},"table-scroller-header-css":{decorator:[qx.ui.decoration.MSingleBorder,qx.ui.decoration.MLinearBackgroundGradient],style:{gradientStart:[q,10],gradientEnd:[dg,90],widthBottom:1,colorBottom:cG}},"table-header-cell":{decorator:qx.ui.decoration.Single,style:{widthRight:1,colorRight:cD,styleRight:cJ}},"table-header-cell-hovered":{decorator:qx.ui.decoration.Single,style:{widthRight:1,colorRight:cD,styleRight:cJ,widthBottom:1,colorBottom:bg,styleBottom:cJ}},"table-scroller-focus-indicator":{decorator:qx.ui.decoration.Single,style:{width:2,color:d,style:cJ}},"progressive-table-header":{decorator:qx.ui.decoration.Single,style:{width:1,color:cG,style:cJ}},"progressive-table-header-cell":{decorator:qx.ui.decoration.Single,style:{backgroundImage:di,backgroundRepeat:cH,widthRight:1,colorRight:ch,style:cJ}},"progressive-table-header-cell-css":{decorator:[qx.ui.decoration.MSingleBorder,qx.ui.decoration.MLinearBackgroundGradient],style:{gradientStart:[q,10],gradientEnd:[dg,90],widthRight:1,colorRight:ch}},"menu":{decorator:qx.ui.decoration.Single,style:{backgroundImage:W,backgroundRepeat:cH,width:1,color:cG,style:cJ}},"menu-css":{decorator:[qx.ui.decoration.MLinearBackgroundGradient,qx.ui.decoration.MBoxShadow,qx.ui.decoration.MSingleBorder],style:{gradientStart:[O,0],gradientEnd:[n,100],shadowColor:cE,shadowBlurRadius:2,shadowLength:1,width:1,color:cG}},"menu-separator":{decorator:qx.ui.decoration.Single,style:{widthTop:1,colorTop:de,widthBottom:1,colorBottom:a}},"menubar":{decorator:qx.ui.decoration.Single,style:{backgroundImage:L,backgroundRepeat:cH,width:1,color:cD,style:cJ}},"menubar-css":{decorator:[qx.ui.decoration.MSingleBorder,qx.ui.decoration.MLinearBackgroundGradient],style:{gradientStart:[i,0],gradientEnd:[n,100],width:1,color:cD}},"app-header":{decorator:qx.ui.decoration.Background,style:{backgroundImage:bV,backgroundRepeat:cH}},"progressbar":{decorator:qx.ui.decoration.Single,style:{width:1,color:bF}},"group-item":{decorator:qx.ui.decoration.Background,style:{backgroundImage:cw,backgroundRepeat:cH}},"group-item-css":{decorator:[qx.ui.decoration.MLinearBackgroundGradient],style:{startColorPosition:0,endColorPosition:100,startColor:bQ,endColor:G}}}});
})();
(function(){var bB="white",bA="#EEEEEE",bz="#E4E4E4",by="#F3F3F3",bx="#F0F0F0",bw="#E8E8E8",bv="#CCCCCC",bu="#EFEFEF",bt="#1a1a1a",bs="#00204D",bh="gray",bg="#F4F4F4",bf="#fffefe",be="#AFAFAF",bd="#084FAB",bc="#FCFCFC",bb="#CCC",ba="#F2F2F2",Y="black",X="#ffffdd",bI="#b6b6b6",bJ="#004DAD",bG="#BABABA",bH="#005BC3",bE="#334866",bF="#CECECE",bC="#D9D9D9",bD="#D8D8D8",bK="#99C3FE",bL="#001533",bl="#B3B3B3",bk="#D5D5D5",bn="#C3C3C3",bm="#DDDDDD",bp="#FF9999",bo="css.rgba",br="#E8E8E9",bq="#084FAA",bj="#C5C5C5",bi="rgba(0, 0, 0, 0.4)",a="#DBDBDB",b="#4a4a4a",c="#83BAEA",d="#D7E7F4",e="#07125A",f="#FAF2F2",g="#87AFE7",h="#F7EAEA",i="#777D8D",j="#FBFBFB",bP="#CACACA",bO="#909090",bN="#9B9B9B",bM="#F0F9FE",bT="#314a6e",bS="#B4B4B4",bR="#787878",bQ="qx.theme.modern.Color",bV="#000000",bU="#26364D",H="#A7A7A7",I="#D1E4FF",F="#5CB0FD",G="#EAEAEA",L="#003B91",M="#80B4EF",J="#FF6B78",K="#949494",D="#808080",E="#930000",r="#7B7B7B",q="#C82C2C",t="#DFDFDF",s="#B6B6B6",n="#0880EF",m="#4d4d4d",p="#f4f4f4",o="#7B7A7E",l="#D0D0D0",k="#f8f8f8",R="#404955",S="#959595",T="#AAAAAA",U="#F7E9E9",N="#314A6E",O="#C72B2B",P="#FAFAFA",Q="#FBFCFB",V="#B2D2FF",W="#666666",B="#CBC8CD",A="#999999",z="#8EB8D6",y="#b8b8b8",x="#727272",w="#33508D",v="#F1F1F1",u="#990000",C="#00368A";
qx.Theme.define(bQ,{colors:{"background-application":t,"background-pane":by,"background-light":bc,"background-medium":bA,"background-splitpane":be,"background-tip":X,"background-tip-error":O,"background-odd":bz,"htmlarea-background":bB,"progressbar-background":bB,"text-light":bO,"text-gray":b,"text-label":bt,"text-title":bT,"text-input":bV,"text-hovered":bL,"text-disabled":o,"text-selected":bf,"text-active":bU,"text-inactive":R,"text-placeholder":B,"border-inner-scrollbar":bB,"border-main":m,"menu-separator-top":bj,"menu-separator-bottom":P,"border-separator":D,"border-toolbar-button-outer":bI,"border-toolbar-border-inner":k,"border-toolbar-separator-right":p,"border-toolbar-separator-left":y,"border-input":bE,"border-inner-input":bB,"border-disabled":s,"border-pane":bs,"border-button":W,"border-column":bv,"border-focused":bK,"invalid":u,"border-focused-invalid":bp,"border-dragover":w,"keyboard-focus":Y,"table-pane":by,"table-focus-indicator":n,"table-row-background-focused-selected":bd,"table-row-background-focused":M,"table-row-background-selected":bd,"table-row-background-even":by,"table-row-background-odd":bz,"table-row-selected":bf,"table-row":bt,"table-row-line":bb,"table-column-line":bb,"table-header-hovered":bB,"progressive-table-header":T,"progressive-table-header-border-right":ba,"progressive-table-row-background-even":bg,"progressive-table-row-background-odd":bz,"progressive-progressbar-background":bh,"progressive-progressbar-indicator-done":bv,"progressive-progressbar-indicator-undone":bB,"progressive-progressbar-percent-background":bh,"progressive-progressbar-percent-text":bB,"selected-start":bJ,"selected-end":C,"tabview-background":e,"shadow":qx.core.Environment.get(bo)?bi:A,"pane-start":j,"pane-end":bx,"group-background":bw,"group-border":bS,"radiobutton-background":bu,"checkbox-border":N,"checkbox-focus":g,"checkbox-hovered":V,"checkbox-hovered-inner":I,"checkbox-inner":bA,"checkbox-start":bz,"checkbox-end":by,"checkbox-disabled-border":bR,"checkbox-disabled-inner":bP,"checkbox-disabled-start":l,"checkbox-disabled-end":bD,"checkbox-hovered-inner-invalid":f,"checkbox-hovered-invalid":U,"radiobutton-checked":bH,"radiobutton-disabled":bk,"radiobutton-checked-disabled":r,"radiobutton-hovered-invalid":h,"tooltip-error":q,"scrollbar-start":bv,"scrollbar-end":v,"scrollbar-slider-start":bA,"scrollbar-slider-end":bn,"button-border-disabled":S,"button-start":bx,"button-end":be,"button-disabled-start":bg,"button-disabled-end":bG,"button-hovered-start":bM,"button-hovered-end":z,"button-focused":c,"border-invalid":E,"input-start":bx,"input-end":Q,"input-focused-start":d,"input-focused-end":F,"input-focused-inner-invalid":J,"input-border-disabled":bN,"input-border-inner":bB,"toolbar-start":bu,"toolbar-end":bm,"window-border":bs,"window-border-caption":x,"window-caption-active-text":bB,"window-caption-active-start":bq,"window-caption-active-end":L,"window-caption-inactive-start":ba,"window-caption-inactive-end":a,"window-statusbar-background":bu,"tabview-start":bc,"tabview-end":bA,"tabview-inactive":i,"tabview-inactive-start":G,"tabview-inactive-end":bF,"table-header-start":bw,"table-header-end":bl,"menu-start":br,"menu-end":bC,"menubar-start":bw,"groupitem-start":H,"groupitem-end":K,"groupitem-text":bB,"virtual-row-layer-background-even":bB,"virtual-row-layer-background-odd":bB}});
})();
(function(){var eq="css.gradients",ep="widget",eo="atom",en="-css",em="button-frame",el="css.borderradius",ek="css.boxshadow",ej="main",ei="button",eh="bold",cC="text-selected",cB="label",cA="image",cz="text-disabled",cy="middle",cx="selected",cw="background-light",cv="groupbox",cu="decoration/arrows/down.png",ct="popup",ex="cell",ey="border-invalid",ev="input",ew="input-disabled",et="menu-button",eu="input-focused-invalid",er="toolbar-button",es="spinner",ez="input-focused",eA="tooltip",dI="qx/static/blank.gif",dH="radiobutton",dK="list",dJ="tree-item",dM="combobox",dL="treevirtual-contract",dO="scrollbar",dN="datechooser/nav-button",dF="center",dE="checkbox",v="treevirtual-expand",w="",x="textfield",y="-invalid",z="decoration/arrows/right.png",A="background-application",B="invalid",C="right-top",D="selectbox",E="text-title",eQ="icon/16/places/folder-open.png",eP="radiobutton-hovered",eO="group-item",eN="scrollbar/button",eU="right",eT="combobox/button",eS="virtual-list",eR="icon/16/places/folder.png",eW="radiobutton-checked-focused",eV="text-label",bz="decoration/tree/closed.png",bA="table-scroller-header",bx="scrollbar-slider-horizontal",by="checkbox-hovered",bD="checkbox-checked",bE="decoration/arrows/left.png",bB="radiobutton-checked",bC="button-focused",bv="text-light",bw="menu-slidebar-button",bb="tree",ba="checkbox-undetermined",bd="table-scroller-header-css",bc="text-input",W="slidebar/button-forward",V="background-splitpane",Y="text-hovered",X=".png",U="decoration/tree/open.png",T="default",bK="decoration/arrows/down-small.png",bL="datechooser",bM="slidebar/button-backward",bN="radiobutton-checked-disabled",bG="checkbox-focused",bH="radiobutton-checked-hovered",bI="treevirtual-folder",bJ="shadow-popup",bO="icon/16/mimetypes/office-document.png",bP="background-medium",bo="icon/32/places/folder-open.png",bn="icon/22/places/folder-open.png",bm="table",bl="decoration/arrows/up.png",bk="decoration/form/",bj="radiobutton-focused",bi="button-checked",bh="decoration/window/maximize-active-hovered.png",bs="keyboard-focus",br="menu-css",bQ="decoration/cursors/",bR="slidebar",bS="tooltip-error-arrow",bT="table-scroller-focus-indicator",bU="popup-css",bV="move-frame",bW="nodrop",bX="decoration/table/boolean-true.png",bY="-invalid-css",ca="menu",cK="app-header",cJ="row-layer",cI="text-inactive",cH="move",cO="decoration/window/restore-active-hovered.png",cN="border-separator",cM="shadow-window",cL="tree-folder",cS="window-pane-css",cR="right.png",ds="checkbox-undetermined-hovered",dt="window-incl-statusbar-css",dq="tabview-page-button-bottom-inactive",dr="tooltip-error",dn="window-css",dp="window-statusbar",dl="button-hovered",dm="decoration/scrollbar/scrollbar-",dA="background-tip",dB="menubar-css",dT="scrollbar-slider-horizontal-disabled",dS="radiobutton-disabled",dV="window-resize-frame-css",dU="button-pressed",dX="table-pane",dW="decoration/window/close-active.png",ea="native",dY="button-invalid-shadow",dQ="decoration/window/minimize-active-hovered.png",dP="menubar",eH="icon/16/actions/dialog-cancel.png",eI="tabview-page-button-top-inactive",eJ="tabview-page-button-left-inactive",eK="menu-slidebar",eD="toolbar-button-checked",eE="decoration/tree/open-selected.png",eF="decoration/window/minimize-inactive.png",eG="icon/16/apps/office-calendar.png",eB="group-item-css",eC="group",k="tabview-page-button-right-inactive",j="decoration/window/minimize-active.png",i="decoration/window/restore-inactive.png",h="checkbox-checked-focused",g="splitpane",f="combobox/textfield",e="decoration/window/close-active-hovered.png",d="qx/icon/Tango/16/actions/window-close.png",c="checkbox-pressed",b="button-disabled",J="selected-dragover",K="tooltip-error-css",H="decoration/window/maximize-inactive.png",I="dragover",N="scrollarea",O="scrollbar-vertical",L="decoration/menu/checkbox-invert.gif",M="decoration/toolbar/toolbar-handle-knob.gif",Q="icon/22/mimetypes/office-document.png",R="table-header-cell",cW="button-checked-focused",cQ="up.png",de="best-fit",da="pane-css",cF="decoration/tree/closed-selected.png",cD="qx.theme.modern.Appearance",bf="text-active",cG="checkbox-disabled",bq="toolbar-button-hovered",bp="window-resize-frame-incl-statusbar-css",ck="decoration/form/checked.png",cl="progressive-table-header",cm="decoration/table/select-column-order.png",cn="decoration/menu/radiobutton.gif",co="decoration/arrows/forward.png",cp="decoration/table/descending.png",cq="decoration/form/undetermined.png",cr="tree-file",ch="window-captionbar-active",ci="checkbox-checked-hovered",cE="scrollbar-slider-vertical",dd="toolbar",dc="alias",db="decoration/window/restore-active.png",di="decoration/table/boolean-false.png",dh="icon/32/mimetypes/office-document.png",dg="tabview-pane",df="decoration/arrows/rewind.png",cY="top",cX="icon/16/actions/dialog-ok.png",P="progressbar-background",bu="table-header-cell-hovered",bt="window-statusbar-css",cP="window",bF="text-gray",cV="decoration/menu/radiobutton-invert.gif",cU="text-placeholder",cT="slider",be="toolbar-css",dk="keep-align",S="down.png",bg="groupitem-text",cb="tabview-page-button-top-active",cc="icon/22/places/folder.png",cd="decoration/window/maximize-active.png",ce="checkbox-checked-pressed",cf="decoration/window/close-inactive.png",cg="tabview-page-button-left-active",dD="toolbar-part",cj="decoration/splitpane/knob-vertical.png",ec=".gif",eb="virtual-row-layer-background-odd",ee="table-statusbar",ed="progressive-table-header-cell-css",eg="window-captionbar-inactive",ef="copy",cs="decoration/arrows/down-invert.png",dR="decoration/menu/checkbox.gif",dj="window-caption-active-text",dG="decoration/splitpane/knob-horizontal.png",F="group-css",G="icon/32/places/folder.png",dy="virtual-row-layer-background-even",dz="toolbar-separator",dw="tabview-page-button-bottom-active",dx="decoration/arrows/up-small.png",du="decoration/table/ascending.png",dv="decoration/arrows/up-invert.png",a="small",dC="tabview-page-button-right-active",s="-disabled",r="scrollbar-horizontal",q="progressbar",p="checkbox-undetermined-focused",o="progressive-table-header-cell",n="menu-separator",m="tabview-pane-css",l="pane",u="htmlarea-background",t="decoration/arrows/right-invert.png",eL="left.png",eM="icon/16/actions/view-refresh.png";
qx.Theme.define(cD,{appearances:{"widget":{},"root":{style:function(eX){return {backgroundColor:A,textColor:eV,font:T};
}},"label":{style:function(eY){return {textColor:eY.disabled?cz:undefined};
}},"move-frame":{style:function(fa){return {decorator:ej};
}},"resize-frame":bV,"dragdrop-cursor":{style:function(fb){var fc=bW;

if(fb.copy){fc=ef;
}else if(fb.move){fc=cH;
}else if(fb.alias){fc=dc;
}return {source:bQ+fc+ec,position:C,offset:[2,16,2,6]};
}},"image":{style:function(fd){return {opacity:!fd.replacement&&fd.disabled?0.3:1};
}},"atom":{},"atom/label":cB,"atom/icon":cA,"popup":{style:function(fe){var ff=qx.core.Environment.get(ek);
return {decorator:ff?bU:ej,backgroundColor:cw,shadow:ff?undefined:bJ};
}},"button-frame":{alias:eo,style:function(fg){var fk,fj;
var fh=[3,9];

if(fg.checked&&fg.focused&&!fg.inner){fk=cW;
fj=undefined;
fh=[1,7];
}else if(fg.disabled){fk=b;
fj=undefined;
}else if(fg.pressed){fk=dU;
fj=Y;
}else if(fg.checked){fk=bi;
fj=undefined;
}else if(fg.hovered){fk=dl;
fj=Y;
}else if(fg.focused&&!fg.inner){fk=bC;
fj=undefined;
fh=[1,7];
}else{fk=ei;
fj=undefined;
}var fi;
if(qx.core.Environment.get(el)&&qx.core.Environment.get(eq)){if(fg.invalid&&!fg.disabled){fk+=bY;
}else{fk+=en;
}}else{fi=fg.invalid&&!fg.disabled?dY:undefined;
fh=[2,8];
}return {decorator:fk,textColor:fj,shadow:fi,padding:fh,margin:[1,0]};
}},"button-frame/image":{style:function(fl){return {opacity:!fl.replacement&&fl.disabled?0.5:1};
}},"button":{alias:em,include:em,style:function(fm){return {center:true};
}},"hover-button":{alias:eo,include:eo,style:function(fn){var fo=fn.hovered?cx:undefined;

if(fo&&qx.core.Environment.get(eq)){fo+=en;
}return {decorator:fo,textColor:fn.hovered?cC:undefined};
}},"splitbutton":{},"splitbutton/button":ei,"splitbutton/arrow":{alias:ei,include:ei,style:function(fp,fq){return {icon:cu,padding:[fq.padding[0],fq.padding[1]-6],marginLeft:1};
}},"form-renderer-label":{include:cB,style:function(){return {paddingTop:4};
}},"checkbox":{alias:eo,style:function(fr){var fs=qx.core.Environment.get(eq)&&qx.core.Environment.get(ek);
var fu;

if(fs){if(fr.checked){fu=ck;
}else if(fr.undetermined){fu=cq;
}else{fu=dI;
}}else{if(fr.checked){if(fr.disabled){fu=bD;
}else if(fr.focused){fu=h;
}else if(fr.pressed){fu=ce;
}else if(fr.hovered){fu=ci;
}else{fu=bD;
}}else if(fr.undetermined){if(fr.disabled){fu=ba;
}else if(fr.focused){fu=p;
}else if(fr.hovered){fu=ds;
}else{fu=ba;
}}else if(!fr.disabled){if(fr.focused){fu=bG;
}else if(fr.pressed){fu=c;
}else if(fr.hovered){fu=by;
}}fu=fu||dE;
var ft=fr.invalid&&!fr.disabled?y:w;
fu=bk+fu+ft+X;
}return {icon:fu,minWidth:fs?14:undefined,gap:fs?8:6};
}},"checkbox/icon":{style:function(fv){var fx=qx.core.Environment.get(eq)&&qx.core.Environment.get(ek);

if(!fx){return {opacity:!fv.replacement&&fv.disabled?0.3:1};
}var fy;

if(fv.disabled){fy=cG;
}else if(fv.focused){fy=bG;
}else if(fv.hovered){fy=by;
}else{fy=dE;
}fy+=fv.invalid&&!fv.disabled?y:w;
var fw;
if(fv.undetermined){fw=[2,0];
}return {decorator:fy,padding:fw,width:12,height:10};
}},"radiobutton":{alias:eo,style:function(fz){var fA=qx.core.Environment.get(el)&&qx.core.Environment.get(ek);
var fC;

if(fA){fC=dI;
}else{if(fz.checked&&fz.focused){fC=eW;
}else if(fz.checked&&fz.disabled){fC=bN;
}else if(fz.checked&&fz.hovered){fC=bH;
}else if(fz.checked){fC=bB;
}else if(fz.focused){fC=bj;
}else if(fz.hovered){fC=eP;
}else{fC=dH;
}var fB=fz.invalid&&!fz.disabled?y:w;
fC=bk+fC+fB+X;
}return {icon:fC,gap:fA?8:6};
}},"radiobutton/icon":{style:function(fD){var fE=qx.core.Environment.get(el)&&qx.core.Environment.get(ek);

if(!fE){return {opacity:!fD.replacement&&fD.disabled?0.3:1};
}var fF;

if(fD.disabled&&!fD.checked){fF=dS;
}else if(fD.checked&&fD.focused){fF=eW;
}else if(fD.checked&&fD.disabled){fF=bN;
}else if(fD.checked&&fD.hovered){fF=bH;
}else if(fD.checked){fF=bB;
}else if(fD.focused){fF=bj;
}else if(fD.hovered){fF=eP;
}else{fF=dH;
}fF+=fD.invalid&&!fD.disabled?y:w;
return {decorator:fF,width:12,height:10};
}},"textfield":{style:function(fG){var fL;
var fJ=!!fG.focused;
var fK=!!fG.invalid;
var fH=!!fG.disabled;

if(fJ&&fK&&!fH){fL=eu;
}else if(fJ&&!fK&&!fH){fL=ez;
}else if(fH){fL=ew;
}else if(!fJ&&fK&&!fH){fL=ey;
}else{fL=ev;
}
if(qx.core.Environment.get(eq)){fL+=en;
}var fI;

if(fG.disabled){fI=cz;
}else if(fG.showingPlaceholder){fI=cU;
}else{fI=bc;
}return {decorator:fL,padding:[2,4,1],textColor:fI};
}},"textarea":{include:x,style:function(fM){return {padding:4};
}},"spinner":{style:function(fN){var fR;
var fP=!!fN.focused;
var fQ=!!fN.invalid;
var fO=!!fN.disabled;

if(fP&&fQ&&!fO){fR=eu;
}else if(fP&&!fQ&&!fO){fR=ez;
}else if(fO){fR=ew;
}else if(!fP&&fQ&&!fO){fR=ey;
}else{fR=ev;
}
if(qx.core.Environment.get(eq)){fR+=en;
}return {decorator:fR};
}},"spinner/textfield":{style:function(fS){return {marginRight:2,padding:[2,4,1],textColor:fS.disabled?cz:bc};
}},"spinner/upbutton":{alias:em,include:em,style:function(fT,fU){return {icon:dx,padding:[fU.padding[0]-1,fU.padding[1]-5],shadow:undefined,margin:0};
}},"spinner/downbutton":{alias:em,include:em,style:function(fV,fW){return {icon:bK,padding:[fW.padding[0]-1,fW.padding[1]-5],shadow:undefined,margin:0};
}},"datefield":dM,"datefield/button":{alias:eT,include:eT,style:function(fX){return {icon:eG,padding:[0,3],decorator:undefined};
}},"datefield/textfield":f,"datefield/list":{alias:bL,include:bL,style:function(fY){return {decorator:undefined};
}},"groupbox":{style:function(ga){return {legendPosition:cY};
}},"groupbox/legend":{alias:eo,style:function(gb){return {padding:[1,0,1,4],textColor:gb.invalid?B:E,font:eh};
}},"groupbox/frame":{style:function(gc){var gd=qx.core.Environment.get(el);
return {padding:gd?10:12,margin:gd?1:undefined,decorator:gd?F:eC};
}},"check-groupbox":cv,"check-groupbox/legend":{alias:dE,include:dE,style:function(ge){return {padding:[1,0,1,4],textColor:ge.invalid?B:E,font:eh};
}},"radio-groupbox":cv,"radio-groupbox/legend":{alias:dH,include:dH,style:function(gf){return {padding:[1,0,1,4],textColor:gf.invalid?B:E,font:eh};
}},"scrollarea":{style:function(gg){return {minWidth:50,minHeight:50};
}},"scrollarea/corner":{style:function(gh){return {backgroundColor:A};
}},"scrollarea/pane":ep,"scrollarea/scrollbar-x":dO,"scrollarea/scrollbar-y":dO,"scrollbar":{style:function(gi){if(gi[ea]){return {};
}var gj=qx.core.Environment.get(eq);
var gk=gi.horizontal?r:O;

if(gj){gk+=en;
}return {width:gi.horizontal?undefined:16,height:gi.horizontal?16:undefined,decorator:gk,padding:1};
}},"scrollbar/slider":{alias:cT,style:function(gl){return {padding:gl.horizontal?[0,1,0,1]:[1,0,1,0]};
}},"scrollbar/slider/knob":{include:em,style:function(gm){var gn=qx.core.Environment.get(eq);
var go=gm.horizontal?bx:cE;

if(gm.disabled){go+=s;
}
if(gn){go+=en;
}return {decorator:go,minHeight:gm.horizontal?undefined:9,minWidth:gm.horizontal?9:undefined,padding:undefined,margin:0};
}},"scrollbar/button":{alias:em,include:em,style:function(gp){var gs=dm;

if(gp.left){gs+=eL;
}else if(gp.right){gs+=cR;
}else if(gp.up){gs+=cQ;
}else{gs+=S;
}var gr=qx.core.Environment.get(eq);

if(gp.left||gp.right){var gq=gp.left?3:4;
return {padding:gr?[3,0,3,gq]:[2,0,2,gq],icon:gs,width:15,height:14,margin:0};
}else{return {padding:gr?3:[3,2],icon:gs,width:14,height:15,margin:0};
}}},"scrollbar/button-begin":eN,"scrollbar/button-end":eN,"slider":{style:function(gt){var gx;
var gv=!!gt.focused;
var gw=!!gt.invalid;
var gu=!!gt.disabled;

if(gv&&gw&&!gu){gx=eu;
}else if(gv&&!gw&&!gu){gx=ez;
}else if(gu){gx=ew;
}else if(!gv&&gw&&!gu){gx=ey;
}else{gx=ev;
}
if(qx.core.Environment.get(eq)){gx+=en;
}return {decorator:gx};
}},"slider/knob":{include:em,style:function(gy){return {decorator:gy.disabled?dT:bx,shadow:undefined,height:14,width:14,padding:0};
}},"list":{alias:N,style:function(gz){var gD;
var gB=!!gz.focused;
var gC=!!gz.invalid;
var gA=!!gz.disabled;

if(gB&&gC&&!gA){gD=eu;
}else if(gB&&!gC&&!gA){gD=ez;
}else if(gA){gD=ew;
}else if(!gB&&gC&&!gA){gD=ey;
}else{gD=ev;
}
if(qx.core.Environment.get(eq)){gD+=en;
}return {backgroundColor:cw,decorator:gD};
}},"list/pane":ep,"listitem":{alias:eo,style:function(gE){var gF;

if(gE.dragover){gF=gE.selected?J:I;
}else{gF=gE.selected?cx:undefined;

if(gF&&qx.core.Environment.get(eq)){gF+=en;
}}return {padding:gE.dragover?[4,4,2,4]:4,textColor:gE.selected?cC:undefined,decorator:gF};
}},"slidebar":{},"slidebar/scrollpane":{},"slidebar/content":{},"slidebar/button-forward":{alias:em,include:em,style:function(gG){return {padding:5,center:true,icon:gG.vertical?cu:z};
}},"slidebar/button-backward":{alias:em,include:em,style:function(gH){return {padding:5,center:true,icon:gH.vertical?bl:bE};
}},"tabview":{style:function(gI){return {contentPadding:16};
}},"tabview/bar":{alias:bR,style:function(gJ){var gK=qx.core.Environment.get(el)&&qx.core.Environment.get(ek)&&qx.core.Environment.get(eq);
var gL={marginBottom:gJ.barTop?-1:0,marginTop:gJ.barBottom?gK?-4:-7:0,marginLeft:gJ.barRight?gK?-3:-5:0,marginRight:gJ.barLeft?-1:0,paddingTop:0,paddingRight:0,paddingBottom:0,paddingLeft:0};

if(gJ.barTop||gJ.barBottom){gL.paddingLeft=5;
gL.paddingRight=7;
}else{gL.paddingTop=5;
gL.paddingBottom=7;
}return gL;
}},"tabview/bar/button-forward":{include:W,alias:W,style:function(gM){if(gM.barTop||gM.barBottom){return {marginTop:2,marginBottom:2};
}else{return {marginLeft:2,marginRight:2};
}}},"tabview/bar/button-backward":{include:bM,alias:bM,style:function(gN){if(gN.barTop||gN.barBottom){return {marginTop:2,marginBottom:2};
}else{return {marginLeft:2,marginRight:2};
}}},"tabview/bar/scrollpane":{},"tabview/pane":{style:function(gO){var gP=qx.core.Environment.get(eq)&&qx.core.Environment.get(el);
return {decorator:gP?m:dg,minHeight:100,marginBottom:gO.barBottom?-1:0,marginTop:gO.barTop?-1:0,marginLeft:gO.barLeft?-1:0,marginRight:gO.barRight?-1:0};
}},"tabview-page":{alias:ep,include:ep,style:function(gQ){var gR=qx.core.Environment.get(eq)&&qx.core.Environment.get(el);
return {padding:gR?[4,3]:undefined};
}},"tabview-page/button":{alias:eo,style:function(gS){var ha,gV=0;
var gY=0,gT=0,gW=0,gX=0;
var gU=qx.core.Environment.get(el)&&qx.core.Environment.get(ek)&&qx.core.Environment.get(eq);

if(gS.checked){if(gS.barTop){ha=cb;
gV=gU?[5,11]:[6,14];
gW=gS.firstTab?0:-5;
gX=gS.lastTab?0:-5;
}else if(gS.barBottom){ha=dw;
gV=gU?[5,11]:[6,14];
gW=gS.firstTab?0:-5;
gX=gS.lastTab?0:-5;
gY=3;
}else if(gS.barRight){ha=dC;
gV=gU?[5,10]:[6,13];
gY=gS.firstTab?0:-5;
gT=gS.lastTab?0:-5;
gW=2;
}else{ha=cg;
gV=gU?[5,10]:[6,13];
gY=gS.firstTab?0:-5;
gT=gS.lastTab?0:-5;
}}else{if(gS.barTop){ha=eI;
gV=gU?[3,9]:[4,10];
gY=4;
gW=gS.firstTab?5:1;
gX=1;
}else if(gS.barBottom){ha=dq;
gV=gU?[3,9]:[4,10];
gT=4;
gW=gS.firstTab?5:1;
gX=1;
gY=3;
}else if(gS.barRight){ha=k;
gV=gU?[3,9]:[4,10];
gX=5;
gY=gS.firstTab?5:1;
gT=1;
gW=3;
}else{ha=eJ;
gV=gU?[3,9]:[4,10];
gW=5;
gY=gS.firstTab?5:1;
gT=1;
gX=1;
}}
if(ha&&gU){ha+=en;
}return {zIndex:gS.checked?10:5,decorator:ha,padding:gV,marginTop:gY,marginBottom:gT,marginLeft:gW,marginRight:gX,textColor:gS.disabled?cz:gS.checked?bf:cI};
}},"tabview-page/button/label":{alias:cB,style:function(hb){return {padding:[0,1,0,1],margin:hb.focused?0:1,decorator:hb.focused?bs:undefined};
}},"tabview-page/button/close-button":{alias:eo,style:function(hc){return {icon:d};
}},"toolbar":{style:function(hd){var he=qx.core.Environment.get(eq);
return {decorator:he?be:dd,spacing:2};
}},"toolbar/part":{style:function(hf){return {decorator:dD,spacing:2};
}},"toolbar/part/container":{style:function(hg){return {paddingLeft:2,paddingRight:2};
}},"toolbar/part/handle":{style:function(hh){return {source:M,marginLeft:3,marginRight:3};
}},"toolbar-button":{alias:eo,style:function(hi){var hk;

if(hi.pressed||(hi.checked&&!hi.hovered)||(hi.checked&&hi.disabled)){hk=eD;
}else if(hi.hovered&&!hi.disabled){hk=bq;
}var hj=qx.core.Environment.get(eq)&&qx.core.Environment.get(el);

if(hj&&hk){hk+=en;
}return {marginTop:2,marginBottom:2,padding:(hi.pressed||hi.checked||hi.hovered)&&!hi.disabled||(hi.disabled&&hi.checked)?3:5,decorator:hk};
}},"toolbar-menubutton":{alias:er,include:er,style:function(hl){return {showArrow:true};
}},"toolbar-menubutton/arrow":{alias:cA,include:cA,style:function(hm){return {source:bK};
}},"toolbar-splitbutton":{style:function(hn){return {marginTop:2,marginBottom:2};
}},"toolbar-splitbutton/button":{alias:er,include:er,style:function(ho){return {icon:cu,marginTop:undefined,marginBottom:undefined};
}},"toolbar-splitbutton/arrow":{alias:er,include:er,style:function(hp){if(hp.pressed||hp.checked||(hp.hovered&&!hp.disabled)){var hq=1;
}else{var hq=3;
}return {padding:hq,icon:cu,marginTop:undefined,marginBottom:undefined};
}},"toolbar-separator":{style:function(hr){return {decorator:dz,margin:7};
}},"tree":dK,"tree-item":{style:function(hs){var ht=hs.selected?cx:undefined;

if(ht&&qx.core.Environment.get(eq)){ht+=en;
}return {padding:[2,6],textColor:hs.selected?cC:undefined,decorator:ht};
}},"tree-item/icon":{include:cA,style:function(hu){return {paddingRight:5};
}},"tree-item/label":cB,"tree-item/open":{include:cA,style:function(hv){var hw;

if(hv.selected&&hv.opened){hw=eE;
}else if(hv.selected&&!hv.opened){hw=cF;
}else if(hv.opened){hw=U;
}else{hw=bz;
}return {padding:[0,5,0,2],source:hw};
}},"tree-folder":{include:dJ,alias:dJ,style:function(hx){var hz,hy;

if(hx.small){hz=hx.opened?eQ:eR;
hy=eQ;
}else if(hx.large){hz=hx.opened?bo:G;
hy=bo;
}else{hz=hx.opened?bn:cc;
hy=bn;
}return {icon:hz,iconOpened:hy};
}},"tree-file":{include:dJ,alias:dJ,style:function(hA){return {icon:hA.small?bO:hA.large?dh:Q};
}},"treevirtual":bm,"treevirtual-folder":{style:function(hB){return {icon:hB.opened?eQ:eR};
}},"treevirtual-file":{include:bI,alias:bI,style:function(hC){return {icon:bO};
}},"treevirtual-line":{style:function(hD){return {icon:dI};
}},"treevirtual-contract":{style:function(hE){return {icon:U,paddingLeft:5,paddingTop:2};
}},"treevirtual-expand":{style:function(hF){return {icon:bz,paddingLeft:5,paddingTop:2};
}},"treevirtual-only-contract":dL,"treevirtual-only-expand":v,"treevirtual-start-contract":dL,"treevirtual-start-expand":v,"treevirtual-end-contract":dL,"treevirtual-end-expand":v,"treevirtual-cross-contract":dL,"treevirtual-cross-expand":v,"treevirtual-end":{style:function(hG){return {icon:dI};
}},"treevirtual-cross":{style:function(hH){return {icon:dI};
}},"tooltip":{include:ct,style:function(hI){return {backgroundColor:dA,padding:[1,3,2,3],offset:[15,5,5,5]};
}},"tooltip/atom":eo,"tooltip-error":{include:eA,style:function(hJ){var hK=qx.core.Environment.get(el)&&qx.core.Environment.get(ek);
return {textColor:cC,backgroundColor:undefined,placeMethod:ep,offset:[0,0,0,14],marginTop:-2,position:C,showTimeout:100,hideTimeout:10000,decorator:hK?K:dr,shadow:bS,font:eh,padding:hK?3:undefined};
}},"tooltip-error/atom":eo,"window":{style:function(hL){var hN=qx.core.Environment.get(el)&&qx.core.Environment.get(eq)&&qx.core.Environment.get(ek);
var hO;
var hM;

if(hN){if(hL.showStatusbar){hO=dt;
}else{hO=dn;
}}else{hM=cM;
}return {decorator:hO,shadow:hM,contentPadding:[10,10,10,10],margin:[0,5,5,0]};
}},"window-resize-frame":{style:function(hP){var hQ=qx.core.Environment.get(el);
var hR;

if(hQ){if(hP.showStatusbar){hR=bp;
}else{hR=dV;
}}else{hR=ej;
}return {decorator:hR};
}},"window/pane":{style:function(hS){var hT=qx.core.Environment.get(el)&&qx.core.Environment.get(eq)&&qx.core.Environment.get(ek);
return {decorator:hT?cS:cP};
}},"window/captionbar":{style:function(hU){var hV=qx.core.Environment.get(el)&&qx.core.Environment.get(eq)&&qx.core.Environment.get(ek);
var hW=hU.active?ch:eg;

if(hV){hW+=en;
}return {decorator:hW,textColor:hU.active?dj:bF,minHeight:26,paddingRight:2};
}},"window/icon":{style:function(hX){return {margin:[5,0,3,6]};
}},"window/title":{style:function(hY){return {alignY:cy,font:eh,marginLeft:6,marginRight:12};
}},"window/minimize-button":{alias:eo,style:function(ia){return {icon:ia.active?ia.hovered?dQ:j:eF,margin:[4,8,2,0]};
}},"window/restore-button":{alias:eo,style:function(ib){return {icon:ib.active?ib.hovered?cO:db:i,margin:[5,8,2,0]};
}},"window/maximize-button":{alias:eo,style:function(ic){return {icon:ic.active?ic.hovered?bh:cd:H,margin:[4,8,2,0]};
}},"window/close-button":{alias:eo,style:function(id){return {icon:id.active?id.hovered?e:dW:cf,margin:[4,8,2,0]};
}},"window/statusbar":{style:function(ie){var ig=qx.core.Environment.get(el)&&qx.core.Environment.get(eq)&&qx.core.Environment.get(ek);
return {padding:[2,6],decorator:ig?bt:dp,minHeight:18};
}},"window/statusbar-text":{style:function(ih){return {font:a};
}},"iframe":{style:function(ii){return {decorator:ej};
}},"resizer":{style:function(ij){var ik=qx.core.Environment.get(ek)&&qx.core.Environment.get(el)&&qx.core.Environment.get(eq);
return {decorator:ik?da:l};
}},"splitpane":{style:function(il){return {decorator:g};
}},"splitpane/splitter":{style:function(im){return {width:im.horizontal?3:undefined,height:im.vertical?3:undefined,backgroundColor:V};
}},"splitpane/splitter/knob":{style:function(io){return {source:io.horizontal?dG:cj};
}},"splitpane/slider":{style:function(ip){return {width:ip.horizontal?3:undefined,height:ip.vertical?3:undefined,backgroundColor:V};
}},"selectbox":em,"selectbox/atom":eo,"selectbox/popup":ct,"selectbox/list":{alias:dK},"selectbox/arrow":{include:cA,style:function(iq){return {source:cu,paddingLeft:5};
}},"datechooser":{style:function(ir){var iv;
var it=!!ir.focused;
var iu=!!ir.invalid;
var is=!!ir.disabled;

if(it&&iu&&!is){iv=eu;
}else if(it&&!iu&&!is){iv=ez;
}else if(is){iv=ew;
}else if(!it&&iu&&!is){iv=ey;
}else{iv=ev;
}
if(qx.core.Environment.get(eq)){iv+=en;
}return {padding:2,decorator:iv,backgroundColor:cw};
}},"datechooser/navigation-bar":{},"datechooser/nav-button":{include:em,alias:em,style:function(iw){var ix={padding:[2,4],shadow:undefined};

if(iw.lastYear){ix.icon=df;
ix.marginRight=1;
}else if(iw.lastMonth){ix.icon=bE;
}else if(iw.nextYear){ix.icon=co;
ix.marginLeft=1;
}else if(iw.nextMonth){ix.icon=z;
}return ix;
}},"datechooser/last-year-button-tooltip":eA,"datechooser/last-month-button-tooltip":eA,"datechooser/next-year-button-tooltip":eA,"datechooser/next-month-button-tooltip":eA,"datechooser/last-year-button":dN,"datechooser/last-month-button":dN,"datechooser/next-month-button":dN,"datechooser/next-year-button":dN,"datechooser/month-year-label":{style:function(iy){return {font:eh,textAlign:dF,textColor:iy.disabled?cz:undefined};
}},"datechooser/date-pane":{style:function(iz){return {textColor:iz.disabled?cz:undefined,marginTop:2};
}},"datechooser/weekday":{style:function(iA){return {textColor:iA.disabled?cz:iA.weekend?bv:undefined,textAlign:dF,paddingTop:2,backgroundColor:bP};
}},"datechooser/week":{style:function(iB){return {textAlign:dF,padding:[2,4],backgroundColor:bP};
}},"datechooser/day":{style:function(iC){var iD=iC.disabled?undefined:iC.selected?cx:undefined;

if(iD&&qx.core.Environment.get(eq)){iD+=en;
}return {textAlign:dF,decorator:iD,textColor:iC.disabled?cz:iC.selected?cC:iC.otherMonth?bv:undefined,font:iC.today?eh:undefined,padding:[2,4]};
}},"combobox":{style:function(iE){var iI;
var iG=!!iE.focused;
var iH=!!iE.invalid;
var iF=!!iE.disabled;

if(iG&&iH&&!iF){iI=eu;
}else if(iG&&!iH&&!iF){iI=ez;
}else if(iF){iI=ew;
}else if(!iG&&iH&&!iF){iI=ey;
}else{iI=ev;
}
if(qx.core.Environment.get(eq)){iI+=en;
}return {decorator:iI};
}},"combobox/popup":ct,"combobox/list":{alias:dK},"combobox/button":{include:em,alias:em,style:function(iJ,iK){var iL={icon:cu,padding:[iK.padding[0],iK.padding[1]-6],shadow:undefined,margin:undefined};

if(iJ.selected){iL.decorator=bC;
}return iL;
}},"combobox/textfield":{include:x,style:function(iM){return {decorator:undefined};
}},"menu":{style:function(iN){var iO=qx.core.Environment.get(eq)&&qx.core.Environment.get(ek);
var iP={decorator:iO?br:ca,shadow:iO?undefined:bJ,spacingX:6,spacingY:1,iconColumnWidth:16,arrowColumnWidth:4,placementModeY:iN.submenu||iN.contextmenu?de:dk};

if(iN.submenu){iP.position=C;
iP.offset=[-2,-3];
}return iP;
}},"menu/slidebar":eK,"menu-slidebar":ep,"menu-slidebar-button":{style:function(iQ){var iR=iQ.hovered?cx:undefined;

if(iR&&qx.core.Environment.get(eq)){iR+=en;
}return {decorator:iR,padding:7,center:true};
}},"menu-slidebar/button-backward":{include:bw,style:function(iS){return {icon:iS.hovered?dv:bl};
}},"menu-slidebar/button-forward":{include:bw,style:function(iT){return {icon:iT.hovered?cs:cu};
}},"menu-separator":{style:function(iU){return {height:0,decorator:n,margin:[4,2]};
}},"menu-button":{alias:eo,style:function(iV){var iW=iV.selected?cx:undefined;

if(iW&&qx.core.Environment.get(eq)){iW+=en;
}return {decorator:iW,textColor:iV.selected?cC:undefined,padding:[4,6]};
}},"menu-button/icon":{include:cA,style:function(iX){return {alignY:cy};
}},"menu-button/label":{include:cB,style:function(iY){return {alignY:cy,padding:1};
}},"menu-button/shortcut":{include:cB,style:function(ja){return {alignY:cy,marginLeft:14,padding:1};
}},"menu-button/arrow":{include:cA,style:function(jb){return {source:jb.selected?t:z,alignY:cy};
}},"menu-checkbox":{alias:et,include:et,style:function(jc){return {icon:!jc.checked?undefined:jc.selected?L:dR};
}},"menu-radiobutton":{alias:et,include:et,style:function(jd){return {icon:!jd.checked?undefined:jd.selected?cV:cn};
}},"menubar":{style:function(je){var jf=qx.core.Environment.get(eq);
return {decorator:jf?dB:dP};
}},"menubar-button":{alias:eo,style:function(jg){var jh=(jg.pressed||jg.hovered)&&!jg.disabled?cx:undefined;

if(jh&&qx.core.Environment.get(eq)){jh+=en;
}return {decorator:jh,textColor:jg.pressed||jg.hovered?cC:undefined,padding:[3,8]};
}},"colorselector":ep,"colorselector/control-bar":ep,"colorselector/control-pane":ep,"colorselector/visual-pane":cv,"colorselector/preset-grid":ep,"colorselector/colorbucket":{style:function(ji){return {decorator:ej,width:16,height:16};
}},"colorselector/preset-field-set":cv,"colorselector/input-field-set":cv,"colorselector/preview-field-set":cv,"colorselector/hex-field-composite":ep,"colorselector/hex-field":x,"colorselector/rgb-spinner-composite":ep,"colorselector/rgb-spinner-red":es,"colorselector/rgb-spinner-green":es,"colorselector/rgb-spinner-blue":es,"colorselector/hsb-spinner-composite":ep,"colorselector/hsb-spinner-hue":es,"colorselector/hsb-spinner-saturation":es,"colorselector/hsb-spinner-brightness":es,"colorselector/preview-content-old":{style:function(jj){return {decorator:ej,width:50,height:10};
}},"colorselector/preview-content-new":{style:function(jk){return {decorator:ej,backgroundColor:cw,width:50,height:10};
}},"colorselector/hue-saturation-field":{style:function(jl){return {decorator:ej,margin:5};
}},"colorselector/brightness-field":{style:function(jm){return {decorator:ej,margin:[5,7]};
}},"colorselector/hue-saturation-pane":ep,"colorselector/hue-saturation-handle":ep,"colorselector/brightness-pane":ep,"colorselector/brightness-handle":ep,"colorpopup":{alias:ct,include:ct,style:function(jn){return {padding:5,backgroundColor:A};
}},"colorpopup/field":{style:function(jo){return {decorator:ej,margin:2,width:14,height:14,backgroundColor:cw};
}},"colorpopup/selector-button":ei,"colorpopup/auto-button":ei,"colorpopup/preview-pane":cv,"colorpopup/current-preview":{style:function(jp){return {height:20,padding:4,marginLeft:4,decorator:ej,allowGrowX:true};
}},"colorpopup/selected-preview":{style:function(jq){return {height:20,padding:4,marginRight:4,decorator:ej,allowGrowX:true};
}},"colorpopup/colorselector-okbutton":{alias:ei,include:ei,style:function(jr){return {icon:cX};
}},"colorpopup/colorselector-cancelbutton":{alias:ei,include:ei,style:function(js){return {icon:eH};
}},"table":{alias:ep,style:function(jt){return {decorator:bm};
}},"table/statusbar":{style:function(ju){return {decorator:ee,padding:[0,2]};
}},"table/column-button":{alias:em,style:function(jv){var jw=qx.core.Environment.get(eq);
return {decorator:jw?bd:bA,padding:3,icon:cm};
}},"table-column-reset-button":{include:et,alias:et,style:function(){return {icon:eM};
}},"table-scroller":ep,"table-scroller/scrollbar-x":dO,"table-scroller/scrollbar-y":dO,"table-scroller/header":{style:function(jx){var jy=qx.core.Environment.get(eq);
return {decorator:jy?bd:bA};
}},"table-scroller/pane":{style:function(jz){return {backgroundColor:dX};
}},"table-scroller/focus-indicator":{style:function(jA){return {decorator:bT};
}},"table-scroller/resize-line":{style:function(jB){return {backgroundColor:cN,width:2};
}},"table-header-cell":{alias:eo,style:function(jC){return {minWidth:13,minHeight:20,padding:jC.hovered?[3,4,2,4]:[3,4],decorator:jC.hovered?bu:R,sortIcon:jC.sorted?(jC.sortedAscending?du:cp):undefined};
}},"table-header-cell/label":{style:function(jD){return {minWidth:0,alignY:cy,paddingRight:5};
}},"table-header-cell/sort-icon":{style:function(jE){return {alignY:cy,alignX:eU};
}},"table-header-cell/icon":{style:function(jF){return {minWidth:0,alignY:cy,paddingRight:5};
}},"table-editor-textfield":{include:x,style:function(jG){return {decorator:undefined,padding:[2,2],backgroundColor:cw};
}},"table-editor-selectbox":{include:D,alias:D,style:function(jH){return {padding:[0,2],backgroundColor:cw};
}},"table-editor-combobox":{include:dM,alias:dM,style:function(jI){return {decorator:undefined,backgroundColor:cw};
}},"progressive-table-header":{alias:ep,style:function(jJ){return {decorator:cl};
}},"progressive-table-header-cell":{alias:eo,style:function(jK){var jL=qx.core.Environment.get(eq);
return {minWidth:40,minHeight:25,paddingLeft:6,decorator:jL?ed:o};
}},"app-header":{style:function(jM){return {font:eh,textColor:cC,padding:[8,12],decorator:cK};
}},"app-header-label":cB,"virtual-list":dK,"virtual-list/row-layer":cJ,"row-layer":{style:function(jN){return {colorEven:dy,colorOdd:eb};
}},"group-item":{include:cB,alias:cB,style:function(jO){return {padding:4,decorator:qx.core.Environment.get(eq)?eB:eO,textColor:bg,font:eh};
}},"virtual-selectbox":D,"virtual-selectbox/dropdown":ct,"virtual-selectbox/dropdown/list":{alias:eS},"virtual-combobox":dM,"virtual-combobox/dropdown":ct,"virtual-combobox/dropdown/list":{alias:eS},"virtual-tree":{include:bb,alias:bb,style:function(jP){return {itemHeight:26};
}},"virtual-tree-folder":cL,"virtual-tree-file":cr,"column-layer":ep,"cell":{style:function(jQ){return {textColor:jQ.selected?cC:eV,padding:[3,6],font:T};
}},"cell-string":ex,"cell-number":{include:ex,style:function(jR){return {textAlign:eU};
}},"cell-image":ex,"cell-boolean":{include:ex,style:function(jS){return {iconTrue:bX,iconFalse:di};
}},"cell-atom":ex,"cell-date":ex,"cell-html":ex,"htmlarea":{"include":ep,style:function(jT){return {backgroundColor:u};
}},"progressbar":{style:function(jU){return {decorator:q,padding:[1],backgroundColor:P,width:200,height:20};
}},"progressbar/progress":{style:function(jV){var jW=jV.disabled?eO:cx;

if(qx.core.Environment.get(eq)){jW+=en;
}return {decorator:jW};
}}}});
})();
(function(){var c="Tango",b="qx/icon/Tango",a="qx.theme.icon.Tango";
qx.Theme.define(a,{title:c,aliases:{"icon":b}});
})();
(function(){var t="os.version",s="os.name",r="win",q="7",p="vista",o="osx",n="Liberation Sans",m="Tahoma",l="sans-serif",k="Arial",d="Lucida Grande",j="Candara",g="Segoe UI",c="Consolas",b="monospace",f="Courier New",e="Lucida Console",h="Monaco",a="qx.theme.modern.Font",i="DejaVu Sans Mono";
qx.Theme.define(a,{fonts:{"default":{size:(qx.core.Environment.get(s)==r&&(qx.core.Environment.get(t)==q||qx.core.Environment.get(t)==p))?12:11,lineHeight:1.4,family:qx.core.Environment.get(s)==o?[d]:((qx.core.Environment.get(s)==r&&(qx.core.Environment.get(t)==q||qx.core.Environment.get(t)==p)))?[g,j]:[m,n,k,l]},"bold":{size:(qx.core.Environment.get(s)==r&&(qx.core.Environment.get(t)==q||qx.core.Environment.get(t)==p))?12:11,lineHeight:1.4,family:qx.core.Environment.get(s)==o?[d]:((qx.core.Environment.get(s)==r&&(qx.core.Environment.get(t)==q||qx.core.Environment.get(t)==p)))?[g,j]:[m,n,k,l],bold:true},"small":{size:(qx.core.Environment.get(s)==r&&(qx.core.Environment.get(t)==q||qx.core.Environment.get(t)==p))?11:10,lineHeight:1.4,family:qx.core.Environment.get(s)==o?[d]:((qx.core.Environment.get(s)==r&&(qx.core.Environment.get(t)==q||qx.core.Environment.get(t)==p)))?[g,j]:[m,n,k,l]},"monospace":{size:11,lineHeight:1.4,family:qx.core.Environment.get(s)==o?[e,h]:((qx.core.Environment.get(s)==r&&(qx.core.Environment.get(t)==q||qx.core.Environment.get(t)==p)))?[c]:[c,i,f,b]}}});
})();
(function(){var b="qx.theme.Modern",a="Modern";
qx.Theme.define(b,{title:a,meta:{color:qx.theme.modern.Color,decoration:qx.theme.modern.Decoration,font:qx.theme.modern.Font,appearance:qx.theme.modern.Appearance,icon:qx.theme.icon.Tango}});
})();
(function(){var dl="widget",dk="button",dj="pointer",di="button-box",dh="atom",dg="background",df="main-dark",de="bold",dd="text-disabled",dc="image",ca="white",bY="background-selected",bX="popup",bW="button-box-hovered",bV="",bU="button-box-pressed-hovered",bT="label",bS="button-box-pressed",bR="arrow-down",bQ="groupbox",dt="text-selected",du="cell",dr="textfield",ds="tooltip",dp="combobox/button",dq="list",dm="middle",dn="menu-button",dv="toolbar-button",dw="spinner",cK="button-frame",cJ="-middle",cM="-invert",cL="background-selected-dark",cO="invalid",cN="combobox",cQ="scrollbar",cP="inset",cI="center",cH="datechooser/button",k="right",l="main",m="light-background",n="background-disabled",o="-right",p="radiobutton",q="arrow-",r="checkbox",s="-left",t="tree-folder",dK="selectbox",dJ="-invalid",dI="icon/16/places/folder-open.png",dH="menu-slidebar-button",dO="scrollbar/button",dN="border-invalid",dM="tree-minus",dL="statusbar",dQ="down",dP="text",bg="background-disabled-checked",bh="tree",be="slidebar/button-forward",bf="icon/16/places/folder.png",bk="icon/16/mimetypes/text-plain.png",bl="tree-plus",bi="default",bj="-top-left",bc="datechooser",bd="button-box-focused",L="blank",K="treevirtual-folder",N="-bottom-right",M="virtual-list",H="-top-right",G="arrow-right",J="left",I="up",F="right-top",E="focused-inset",bq="slidebar/button-backward",br="-bottom-left",bs="table-row-background-even",bt="button-box-pressed-top-right",bm="arrow-left",bn="datechooser-weekday",bo="arrow-up",bp="icon/16/actions/dialog-ok.png",bu="button-box-top-right",bv="slidebar",W="#BABABA",V="button-box-hovered-bottom-right",U="tabview-page-button-top-bottom",T="move-frame",S="nodrop",R="window-caption",Q="table-header-cell",P="button-box-hovered-top-right",bb="row-layer",ba="treevirtual-plus-only",bw="move",bx="treevirtual-plus-end",by="-last",bz="vertical",bA="arrow-down-small",bB="tooltip-error",bC="window-restore",bD="resize-frame",bE="scroll-knob",bF="tabview-close",ci="atom/label",ch="button-box-pressed-bottom-right",cg="button-box-pressed-hovered-bottom-right",cf="icon/16/actions/dialog-cancel.png",cm="qx.theme.simple.Appearance",cl="menu-slidebar",ck="treevirtual-minus-cross",cj="background-pane",cp="table-",co="scroll-knob-pressed",cD="icon",cE="arrow-rewind",cB="icon/16/apps/office-calendar.png",cC="headline",cz="treevirtual-plus-start",cA="treevirtual-minus-end",cx="checkbox-undetermined",cy="button-box-bottom-right",cF="datechooser-week",cG="descending",cU="toolbar-separator",cT="arrow-up-small",cW="horizontal",cV="border-light-shadow",cY="text-placeholder",cX="treevirtual-plus-cross",db="scrollarea",da="treevirtual-line",cS="tabview-page-button-right-left",cR="menu-checkbox",dD="best-fit",dE="button-border",dF="treevirtual-cross",dG="button-hover",dz="menubar-button-pressed",dA="progressbar",dB="tree-file",dC="tooltip-text",dx="keep-align",dy="-first",j="alias",i="ascending",h="button-box-hovered-right-borderless",g="button-box-right-borderless",f="lead-item",e="checkbox-focused",d="border-blue",c="window-minimize",b="button-box-pressed-hovered-top-right",a="knob-",w="treevirtual-minus-only",x="treevirtual-minus-start",u="checkbox-checked",v="window",A="window-active",B="table-header-cell-first",y="button-box-pressed-right-borderless",z="scroll-knob-hovered",C="tabview-label-active-disabled",D="select-column-order",cq="button-box-pressed-hovered-right-borderless",cn="scroll-knob-pressed-hovered",cv="white-box",cr="datechooser-week-header",cd="menubar-button-hovered",cb="table-header-column-button",O="window-close",ce="datechooser-date-pane",Y="tabview-unselected",X="cursor-",bI="-focused",bJ="menu-radiobutton",bK="window-maximize",bL="treevirtual-end",bM="table",bN="arrow-forward",bO="copy",bP="table-row-background-selected",bG="radiobutton-focused",bH="scrollbar/slider/knob",cc="atom/icon",cu="table-header",ct="menu-separator",cs="link",cw="icon/16/actions/view-refresh.png";
qx.Theme.define(cm,{appearances:{"widget":{},"label":{style:function(dR){return {textColor:dR.disabled?dd:undefined};
}},"image":{style:function(dS){return {opacity:!dS.replacement&&dS.disabled?0.3:undefined};
}},"atom":{},"atom/label":bT,"atom/icon":dc,"root":{style:function(dT){return {backgroundColor:dg,textColor:dP,font:bi};
}},"popup":{style:function(dU){return {decorator:bX,backgroundColor:cj};
}},"tooltip":{include:bX,style:function(dV){return {backgroundColor:ds,textColor:dC,decorator:ds,padding:[1,3,2,3],offset:[15,5,5,5]};
}},"tooltip/atom":dh,"tooltip-error":{include:ds,style:function(dW){return {textColor:dt,showTimeout:100,hideTimeout:10000,decorator:bB,font:de,backgroundColor:undefined};
}},"tooltip-error/atom":dh,"iframe":{style:function(dX){return {backgroundColor:ca,decorator:df};
}},"move-frame":{style:function(dY){return {decorator:df};
}},"resize-frame":T,"dragdrop-cursor":{style:function(ea){var eb=S;

if(ea.copy){eb=bO;
}else if(ea.move){eb=bw;
}else if(ea.alias){eb=j;
}return {source:qx.theme.simple.Image.URLS[X+eb],position:F,offset:[2,16,2,6]};
}},"slidebar":{},"slidebar/scrollpane":{},"slidebar/content":{},"slidebar/button-forward":{alias:dk,include:dk,style:function(ec){return {icon:qx.theme.simple.Image.URLS[q+(ec.vertical?dQ:k)]};
}},"slidebar/button-backward":{alias:dk,include:dk,style:function(ed){return {icon:qx.theme.simple.Image.URLS[q+(ed.vertical?I:J)]};
}},"table":dl,"table/statusbar":{style:function(ee){return {decorator:dL,padding:[2,5]};
}},"table/column-button":{alias:dk,style:function(ef){return {decorator:cb,padding:3,icon:qx.theme.simple.Image.URLS[D]};
}},"table-column-reset-button":{include:dn,alias:dn,style:function(){return {icon:cw};
}},"table-scroller/scrollbar-x":cQ,"table-scroller/scrollbar-y":cQ,"table-scroller":dl,"table-scroller/header":{style:function(){return {decorator:cu};
}},"table-scroller/pane":{},"table-scroller/focus-indicator":{style:function(eg){return {decorator:l};
}},"table-scroller/resize-line":{style:function(eh){return {backgroundColor:dE,width:3};
}},"table-header-cell":{alias:dh,style:function(ei){return {decorator:ei.first?B:Q,minWidth:13,font:de,paddingTop:3,paddingLeft:5,cursor:ei.disabled?undefined:dj,sortIcon:ei.sorted?(qx.theme.simple.Image.URLS[cp+(ei.sortedAscending?i:cG)]):undefined};
}},"table-header-cell/icon":{include:cc,style:function(ej){return {paddingRight:5};
}},"table-header-cell/sort-icon":{style:function(ek){return {alignY:dm,alignX:k,paddingRight:5};
}},"table-editor-textfield":{include:dr,style:function(el){return {decorator:undefined,padding:[2,2]};
}},"table-editor-selectbox":{include:dK,alias:dK,style:function(em){return {padding:[0,2]};
}},"table-editor-combobox":{include:cN,alias:cN,style:function(en){return {decorator:undefined};
}},"treevirtual":{include:dr,alias:bM,style:function(eo,ep){return {padding:[ep.padding[0]+2,ep.padding[1]+1]};
}},"treevirtual-folder":{style:function(eq){return {icon:(eq.opened?dI:bf)};
}},"treevirtual-file":{include:K,alias:K,style:function(er){return {icon:bk};
}},"treevirtual-line":{style:function(es){return {icon:qx.theme.simple.Image.URLS[da]};
}},"treevirtual-contract":{style:function(et){return {icon:qx.theme.simple.Image.URLS[dM]};
}},"treevirtual-expand":{style:function(eu){return {icon:qx.theme.simple.Image.URLS[bl]};
}},"treevirtual-only-contract":{style:function(ev){return {icon:qx.theme.simple.Image.URLS[w]};
}},"treevirtual-only-expand":{style:function(ew){return {icon:qx.theme.simple.Image.URLS[ba]};
}},"treevirtual-start-contract":{style:function(ex){return {icon:qx.theme.simple.Image.URLS[x]};
}},"treevirtual-start-expand":{style:function(ey){return {icon:qx.theme.simple.Image.URLS[cz]};
}},"treevirtual-end-contract":{style:function(ez){return {icon:qx.theme.simple.Image.URLS[cA]};
}},"treevirtual-end-expand":{style:function(eA){return {icon:qx.theme.simple.Image.URLS[bx]};
}},"treevirtual-cross-contract":{style:function(eB){return {icon:qx.theme.simple.Image.URLS[ck]};
}},"treevirtual-cross-expand":{style:function(eC){return {icon:qx.theme.simple.Image.URLS[cX]};
}},"treevirtual-end":{style:function(eD){return {icon:qx.theme.simple.Image.URLS[bL]};
}},"treevirtual-cross":{style:function(eE){return {icon:qx.theme.simple.Image.URLS[dF]};
}},"resizer":{style:function(eF){return {decorator:df};
}},"splitpane":{},"splitpane/splitter":{style:function(eG){return {backgroundColor:m};
}},"splitpane/splitter/knob":{style:function(eH){return {source:qx.theme.simple.Image.URLS[a+(eH.horizontal?cW:bz)],padding:2};
}},"splitpane/slider":{style:function(eI){return {backgroundColor:cV,opacity:0.3};
}},"menu":{style:function(eJ){var eK={backgroundColor:dg,decorator:l,spacingX:6,spacingY:1,iconColumnWidth:16,arrowColumnWidth:4,padding:1,placementModeY:eJ.submenu||eJ.contextmenu?dD:dx};

if(eJ.submenu){eK.position=F;
eK.offset=[-2,-3];
}
if(eJ.contextmenu){eK.offset=4;
}return eK;
}},"menu/slidebar":cl,"menu-slidebar":dl,"menu-slidebar-button":{style:function(eL){return {backgroundColor:eL.hovered?bY:undefined,padding:6,center:true};
}},"menu-slidebar/button-backward":{include:dH,style:function(eM){return {icon:qx.theme.simple.Image.URLS[bo+(eM.hovered?cM:bV)]};
}},"menu-slidebar/button-forward":{include:dH,style:function(eN){return {icon:qx.theme.simple.Image.URLS[bR+(eN.hovered?cM:bV)]};
}},"menu-separator":{style:function(eO){return {height:0,decorator:ct,marginTop:4,marginBottom:4,marginLeft:2,marginRight:2};
}},"menu-button":{alias:dh,style:function(eP){return {backgroundColor:eP.selected?bY:undefined,textColor:eP.selected?dt:undefined,padding:[2,6]};
}},"menu-button/icon":{include:dc,style:function(eQ){return {alignY:dm};
}},"menu-button/label":{include:bT,style:function(eR){return {alignY:dm,padding:1};
}},"menu-button/shortcut":{include:bT,style:function(eS){return {alignY:dm,marginLeft:14,padding:1};
}},"menu-button/arrow":{include:dc,style:function(eT){return {source:qx.theme.simple.Image.URLS[G+(eT.selected?cM:bV)],alignY:dm};
}},"menu-checkbox":{alias:dn,include:dn,style:function(eU){return {icon:!eU.checked?undefined:qx.theme.simple.Image.URLS[cR+(eU.selected?cM:bV)]};
}},"menu-radiobutton":{alias:dn,include:dn,style:function(eV){return {icon:!eV.checked?undefined:qx.theme.simple.Image.URLS[bJ+(eV.selected?cM:bV)]};
}},"menubar":{style:function(eW){return {backgroundColor:m,padding:[4,2]};
}},"menubar-button":{style:function(eX){var fa;
var eY=[2,6];

if(!eX.disabled){if(eX.pressed){fa=dz;
eY=[1,5,2,5];
}else if(eX.hovered){fa=cd;
eY=[1,5];
}}return {padding:eY,cursor:eX.disabled?undefined:dj,textColor:cs,decorator:fa};
}},"virtual-list":dq,"virtual-list/row-layer":bb,"row-layer":dl,"column-layer":dl,"group-item":{include:bT,alias:bT,style:function(fb){return {padding:4,backgroundColor:W,textColor:ca,font:de};
}},"virtual-selectbox":dK,"virtual-selectbox/dropdown":bX,"virtual-selectbox/dropdown/list":{alias:M},"virtual-combobox":cN,"virtual-combobox/dropdown":bX,"virtual-combobox/dropdown/list":{alias:M},"virtual-tree":{include:bh,alias:bh,style:function(fc){return {itemHeight:21};
}},"virtual-tree-folder":t,"virtual-tree-file":dB,"cell":{style:function(fd){return {backgroundColor:fd.selected?bP:bs,textColor:fd.selected?dt:dP,padding:[3,6]};
}},"cell-string":du,"cell-number":{include:du,style:function(fe){return {textAlign:k};
}},"cell-image":du,"cell-boolean":du,"cell-atom":du,"cell-date":du,"cell-html":du,"htmlarea":{"include":dl,style:function(ff){return {backgroundColor:ca};
}},"scrollbar":{},"scrollbar/slider":{},"scrollbar/slider/knob":{style:function(fg){var fh=bE;

if(!fg.disabled){if(fg.hovered&&!fg.pressed&&!fg.checked){fh=z;
}else if(fg.hovered&&(fg.pressed||fg.checked)){fh=cn;
}else if(fg.pressed||fg.checked){fh=co;
}}return {height:14,width:14,cursor:fg.disabled?undefined:dj,decorator:fh,minHeight:fg.horizontal?undefined:20,minWidth:fg.horizontal?20:undefined};
}},"scrollbar/button":{style:function(fi){var fj={};
fj.padding=4;
var fk=bV;

if(fi.left){fk=J;
fj.marginRight=2;
}else if(fi.right){fk+=k;
fj.marginLeft=2;
}else if(fi.up){fk+=I;
fj.marginBottom=2;
}else{fk+=dQ;
fj.marginTop=2;
}fj.icon=qx.theme.simple.Image.URLS[q+fk];
fj.cursor=dj;
fj.decorator=di;
return fj;
}},"scrollbar/button-begin":dO,"scrollbar/button-end":dO,"scrollarea/corner":{style:function(fl){return {backgroundColor:dg};
}},"scrollarea":dl,"scrollarea/pane":dl,"scrollarea/scrollbar-x":cQ,"scrollarea/scrollbar-y":cQ,"textfield":{style:function(fm){var fo;

if(fm.disabled){fo=dd;
}else if(fm.showingPlaceholder){fo=cY;
}else{fo=undefined;
}var fp;
var fn;

if(fm.disabled){fp=cP;
fn=[2,3];
}else if(fm.invalid){fp=dN;
fn=[1,2];
}else if(fm.focused){fp=E;
fn=[1,2];
}else{fn=[2,3];
fp=cP;
}return {decorator:fp,padding:fn,textColor:fo,backgroundColor:fm.disabled?n:ca};
}},"textarea":dr,"radiobutton/icon":{style:function(fq){var fs=p;

if(fq.focused&&!fq.invalid){fs=bG;
}fs+=fq.invalid&&!fq.disabled?dJ:bV;
var fr;

if(fq.disabled&&fq.checked){fr=bg;
}else if(fq.disabled){fr=n;
}else if(fq.checked){fr=bY;
}return {decorator:fs,width:12,height:12,backgroundColor:fr};
}},"radiobutton":{style:function(ft){return {icon:qx.theme.simple.Image.URLS[L]};
}},"form-renderer-label":{include:bT,style:function(){return {paddingTop:3};
}},"checkbox":{alias:dh,style:function(fu){var fv;
if(fu.checked){fv=qx.theme.simple.Image.URLS[u];
}else if(fu.undetermined){fv=qx.theme.simple.Image.URLS[cx];
}else{fv=qx.theme.simple.Image.URLS[L];
}return {icon:fv,gap:6};
}},"checkbox/icon":{style:function(fw){var fy=r;

if(fw.focused&&!fw.invalid){fy=e;
}fy+=fw.invalid&&!fw.disabled?dJ:bV;
var fx;
if(fw.checked){fx=2;
}else if(fw.undetermined){fx=[4,2];
}return {decorator:fy,width:12,height:12,padding:fx,backgroundColor:ca};
}},"spinner":{style:function(fz){return {textColor:fz.disabled?dd:undefined};
}},"spinner/textfield":dr,"spinner/upbutton":{alias:dp,include:dp,style:function(fA){var fB=bu;

if(fA.hovered&&!fA.pressed&&!fA.checked){fB=P;
}else if(fA.hovered&&(fA.pressed||fA.checked)){fB=b;
}else if(fA.pressed||fA.checked){fB=bt;
}return {icon:qx.theme.simple.Image.URLS[cT],decorator:fB,width:17};
}},"spinner/downbutton":{alias:dp,include:dp,style:function(fC){var fD=cy;

if(fC.hovered&&!fC.pressed&&!fC.checked){fD=V;
}else if(fC.hovered&&(fC.pressed||fC.checked)){fD=cg;
}else if(fC.pressed||fC.checked){fD=ch;
}return {icon:qx.theme.simple.Image.URLS[bA],decorator:fD,width:17};
}},"selectbox":cK,"selectbox/atom":dh,"selectbox/popup":bX,"selectbox/list":{alias:dq,include:dq,style:function(){return {decorator:undefined};
}},"selectbox/arrow":{include:dc,style:function(fE){return {source:qx.theme.simple.Image.URLS[bR],paddingRight:4,paddingLeft:5};
}},"combobox":{},"combobox/button":{alias:cK,include:cK,style:function(fF){var fG=g;

if(fF.hovered&&!fF.pressed&&!fF.checked){fG=h;
}else if(fF.hovered&&(fF.pressed||fF.checked)){fG=cq;
}else if(fF.pressed||fF.checked){fG=y;
}return {icon:qx.theme.simple.Image.URLS[bR],decorator:fG,padding:[0,5],width:19};
}},"combobox/popup":bX,"combobox/list":{alias:dq},"combobox/textfield":dr,"datefield":cN,"datefield/button":{alias:dp,include:dp,style:function(fH){return {icon:cB,padding:[0,0,0,3],backgroundColor:undefined,decorator:undefined,width:19};
}},"datefield/list":{alias:bc,include:bc,style:function(fI){return {decorator:undefined};
}},"list":{alias:db,include:dr},"listitem":{alias:dh,style:function(fJ){return {gap:4,padding:fJ.lead?[2,4]:[3,5],backgroundColor:fJ.selected?bY:undefined,textColor:fJ.selected?dt:undefined,decorator:fJ.lead?f:undefined};
}},"slider":{style:function(fK){var fM;
var fL;

if(fK.disabled){fM=cP;
fL=[2,3];
}else if(fK.invalid){fM=dN;
fL=[1,2];
}else if(fK.focused){fM=E;
fL=[1,2];
}else{fL=[2,3];
fM=cP;
}return {decorator:fM,padding:fL};
}},"slider/knob":bH,"button-frame":{alias:dh,style:function(fN){var fO=di;

if(!fN.disabled){if(fN.hovered&&!fN.pressed&&!fN.checked){fO=bW;
}else if(fN.hovered&&(fN.pressed||fN.checked)){fO=bU;
}else if(fN.pressed||fN.checked){fO=bS;
}}
if(fN.invalid&&!fN.disabled){fO+=dJ;
}else if(fN.focused){fO+=bI;
}return {decorator:fO,padding:[3,8],cursor:fN.disabled?undefined:dj,minWidth:5,minHeight:5};
}},"button-frame/label":{alias:ci,style:function(fP){return {textColor:fP.disabled?dd:undefined};
}},"button":{alias:cK,include:cK,style:function(fQ){return {center:true};
}},"hover-button":{alias:dk,include:dk,style:function(fR){return {decorator:fR.hovered?dG:undefined};
}},"splitbutton":{},"splitbutton/button":{alias:dh,style:function(fS){var fT=di;

if(fS.disabled){fT=di;
}else if(fS.focused){fT=bd;
}else if(fS.hovered&&!fS.pressed&&!fS.checked){fT=bW;
}else if(fS.hovered&&(fS.pressed||fS.checked)){fT=bU;
}else if(fS.pressed||fS.checked){fT=bS;
}fT+=s;
return {decorator:fT,padding:[3,8],cursor:fS.disabled?undefined:dj};
}},"splitbutton/arrow":{style:function(fU){var fV=di;

if(fU.disabled){fV=di;
}else if(fU.focused){fV=bd;
}else if(fU.hovered&&!fU.pressed&&!fU.checked){fV=bW;
}else if(fU.hovered&&(fU.pressed||fU.checked)){fV=bU;
}else if(fU.pressed||fU.checked){fV=bS;
}fV+=o;
return {icon:qx.theme.simple.Image.URLS[bR],decorator:fV,cursor:fU.disabled?undefined:dj,padding:[3,4]};
}},"groupbox":{},"groupbox/legend":{alias:dh,style:function(fW){return {textColor:fW.invalid?cO:undefined,padding:5,margin:4,font:de};
}},"groupbox/frame":{style:function(fX){return {backgroundColor:dg,padding:[6,9],margin:[18,2,2,2],decorator:cv};
}},"check-groupbox":bQ,"check-groupbox/legend":{alias:r,include:r,style:function(fY){return {textColor:fY.invalid?cO:undefined,padding:5,margin:4,font:de};
}},"radio-groupbox":bQ,"radio-groupbox/legend":{alias:p,include:p,style:function(ga){return {textColor:ga.invalid?cO:undefined,padding:5,margin:4,font:de};
}},"tree-folder/open":{include:dc,style:function(gb){return {source:gb.opened?qx.theme.simple.Image.URLS[dM]:qx.theme.simple.Image.URLS[bl]};
}},"tree-folder":{style:function(gc){return {padding:[2,8,2,5],icon:gc.opened?dI:bf,backgroundColor:gc.selected?bY:undefined,iconOpened:dI};
}},"tree-folder/icon":{include:dc,style:function(gd){return {padding:[0,4,0,0]};
}},"tree-folder/label":{style:function(ge){return {padding:[1,2],textColor:ge.selected?dt:undefined};
}},"tree-file":{include:t,alias:t,style:function(gf){return {icon:bk};
}},"tree":{include:dq,alias:dq,style:function(gg){return {contentPadding:gg.invalid&&!gg.disabled?[3,0]:[4,1],padding:gg.focused?0:1};
}},"window":{style:function(gh){return {contentPadding:[10,10,10,10],backgroundColor:dg,decorator:gh.maximized?undefined:gh.active?A:v};
}},"window-resize-frame":bD,"window/pane":{},"window/captionbar":{style:function(gi){return {backgroundColor:gi.active?m:n,padding:8,font:de,decorator:R};
}},"window/icon":{style:function(gj){return {marginRight:4};
}},"window/title":{style:function(gk){return {cursor:bi,font:de,marginRight:20,alignY:dm};
}},"window/minimize-button":{alias:dk,style:function(gl){return {icon:qx.theme.simple.Image.URLS[c],padding:[1,2],cursor:gl.disabled?undefined:dj};
}},"window/restore-button":{alias:dk,style:function(gm){return {icon:qx.theme.simple.Image.URLS[bC],padding:[1,2],cursor:gm.disabled?undefined:dj};
}},"window/maximize-button":{alias:dk,style:function(gn){return {icon:qx.theme.simple.Image.URLS[bK],padding:[1,2],cursor:gn.disabled?undefined:dj};
}},"window/close-button":{alias:dk,style:function(go){return {marginLeft:2,icon:qx.theme.simple.Image.URLS[O],padding:[1,2],cursor:go.disabled?undefined:dj};
}},"window/statusbar":{style:function(gp){return {decorator:dL,padding:[2,6]};
}},"window/statusbar-text":bT,"datechooser":{style:function(gq){return {decorator:l};
}},"datechooser/navigation-bar":{style:function(gr){return {backgroundColor:dg,textColor:gr.disabled?dd:gr.invalid?cO:undefined,padding:[2,10]};
}},"datechooser/last-year-button-tooltip":ds,"datechooser/last-month-button-tooltip":ds,"datechooser/next-year-button-tooltip":ds,"datechooser/next-month-button-tooltip":ds,"datechooser/last-year-button":cH,"datechooser/last-month-button":cH,"datechooser/next-year-button":cH,"datechooser/next-month-button":cH,"datechooser/button/icon":{},"datechooser/button":{style:function(gs){var gt={width:17,show:cD,cursor:gs.disabled?undefined:dj};

if(gs.lastYear){gt.icon=qx.theme.simple.Image.URLS[cE];
}else if(gs.lastMonth){gt.icon=qx.theme.simple.Image.URLS[bm];
}else if(gs.nextYear){gt.icon=qx.theme.simple.Image.URLS[bN];
}else if(gs.nextMonth){gt.icon=qx.theme.simple.Image.URLS[G];
}return gt;
}},"datechooser/month-year-label":{style:function(gu){return {font:de,textAlign:cI};
}},"datechooser/date-pane":{style:function(gv){return {decorator:ce,backgroundColor:dg};
}},"datechooser/weekday":{style:function(gw){return {decorator:bn,font:de,textAlign:cI,textColor:gw.disabled?dd:gw.weekend?cL:dg,backgroundColor:gw.weekend?dg:cL,paddingTop:2};
}},"datechooser/day":{style:function(gx){return {textAlign:cI,decorator:gx.today?l:undefined,textColor:gx.disabled?dd:gx.selected?dt:gx.otherMonth?dd:undefined,backgroundColor:gx.disabled?undefined:gx.selected?bY:undefined,padding:[2,4]};
}},"datechooser/week":{style:function(gy){return {textAlign:cI,textColor:cL,padding:[2,4],decorator:gy.header?cr:cF};
}},"progressbar":{style:function(gz){return {decorator:dA,padding:1,backgroundColor:ca,width:200,height:20};
}},"progressbar/progress":{style:function(gA){return {backgroundColor:gA.disabled?bg:bY};
}},"toolbar":{style:function(gB){return {backgroundColor:m,padding:0};
}},"toolbar/part":{style:function(gC){return {margin:[0,15]};
}},"toolbar/part/container":{},"toolbar/part/handle":{},"toolbar-separator":{style:function(gD){return {decorator:cU,margin:[7,0],width:4};
}},"toolbar-button":{alias:dh,style:function(gE){var gG=di;

if(gE.disabled){gG=di;
}else if(gE.hovered&&!gE.pressed&&!gE.checked){gG=bW;
}else if(gE.hovered&&(gE.pressed||gE.checked)){gG=bU;
}else if(gE.pressed||gE.checked){gG=bS;
}if(gE.left){gG+=s;
}else if(gE.right){gG+=o;
}else if(gE.middle){gG+=cJ;
}var gF=[7,10];

if(gE.left||gE.middle||gE.right){gF=[7,0];
}return {cursor:gE.disabled?undefined:dj,decorator:gG,margin:gF,padding:[3,5]};
}},"toolbar-menubutton":{alias:dv,include:dv,style:function(gH){return {showArrow:true};
}},"toolbar-menubutton/arrow":{alias:dc,include:dc,style:function(gI){return {source:qx.theme.simple.Image.URLS[bR],cursor:gI.disabled?undefined:dj,padding:[0,5],marginLeft:2};
}},"toolbar-splitbutton":{},"toolbar-splitbutton/button":{alias:dv,include:dv,style:function(gJ){var gK=di;

if(gJ.disabled){gK=di;
}else if(gJ.hovered&&!gJ.pressed&&!gJ.checked){gK=bW;
}else if(gJ.hovered&&(gJ.pressed||gJ.checked)){gK=bU;
}else if(gJ.pressed||gJ.checked){gK=bS;
}if(gJ.left){gK+=s;
}else if(gJ.right){gK+=cJ;
}else if(gJ.middle){gK+=cJ;
}return {icon:qx.theme.simple.Image.URLS[bR],decorator:gK};
}},"toolbar-splitbutton/arrow":{alias:dv,include:dv,style:function(gL){var gM=di;

if(gL.disabled){gM=di;
}else if(gL.hovered&&!gL.pressed&&!gL.checked){gM=bW;
}else if(gL.hovered&&(gL.pressed||gL.checked)){gM=bU;
}else if(gL.pressed||gL.checked){gM=bS;
}if(gL.left){gM+=cJ;
}else if(gL.right){gM+=o;
}else if(gL.middle){gM+=cJ;
}return {icon:qx.theme.simple.Image.URLS[bR],decorator:gM};
}},"tabview":{},"tabview/bar":{alias:bv,style:function(gN){var gO=0,gR=0,gP=0,gQ=0;

if(gN.barTop){gP-=2;
}else if(gN.barBottom){gO-=2;
}else if(gN.barRight){gQ-=2;
}else{gR-=2;
}return {marginBottom:gP,marginTop:gO,marginLeft:gQ,marginRight:gR};
}},"tabview/bar/button-forward":{include:be,alias:be,style:function(gS){var gT=di;

if(gS.hovered&&!gS.pressed&&!gS.checked){gT=bW;
}else if(gS.hovered&&(gS.pressed||gS.checked)){gT=bU;
}else if(gS.pressed||gS.checked){gT=bS;
}
if(gS.barTop){return {marginTop:4,marginBottom:2,decorator:gT+H};
}else if(gS.barBottom){return {marginTop:2,marginBottom:4,decorator:gT+N};
}else if(gS.barLeft){return {marginLeft:4,marginRight:2,decorator:gT+br};
}else{return {marginLeft:2,marginRight:4,decorator:gT+N};
}}},"tabview/bar/button-backward":{include:bq,alias:bq,style:function(gU){var gV=di;

if(gU.hovered&&!gU.pressed&&!gU.checked){gV=bW;
}else if(gU.hovered&&(gU.pressed||gU.checked)){gV=bU;
}else if(gU.pressed||gU.checked){gV=bS;
}
if(gU.barTop){return {marginTop:4,marginBottom:2,decorator:gV+bj};
}else if(gU.barBottom){return {marginTop:2,marginBottom:4,decorator:gV+br};
}else if(gU.barLeft){return {marginLeft:4,marginRight:2,decorator:gV+bj};
}else{return {marginLeft:2,marginRight:4,decorator:gV+H};
}}},"tabview/pane":{style:function(gW){return {backgroundColor:dg,decorator:d,padding:10};
}},"tabview-page":dl,"tabview-page/button":{style:function(gX){var hh;
var hf=0,hd=0,ha=0,hc=0;
if(gX.barTop||gX.barBottom){var hb=5,gY=5,he=9,hg=9;
}else{var hb=8,gY=8,he=4,hg=4;
}if(gX.barTop||gX.barBottom){hh=U;
}else if(gX.barRight||gX.barLeft){hh=cS;
}if(gX.checked){if(gX.barTop){he+=1;
hg+=1;
hb+=4;
}else if(gX.barBottom){he+=1;
hg+=1;
hb+=2;
}else if(gX.barLeft){hb+=1;
gY+=1;
he+=4;
}else if(gX.barRight){hb+=1;
gY+=1;
he+=2;
}}else{if(gX.barTop){ha+=2;
hf+=4;
}else if(gX.barBottom){ha+=4;
hf+=2;
}else if(gX.barLeft){hd+=2;
hc+=4;
}else if(gX.barRight){hd+=4;
hc+=2;
}}
if(gX.firstTab&&!gX.checked){hh+=dy;
}else if(gX.lastTab&&!gX.checked){hh+=by;
}return {zIndex:gX.checked?10:5,decorator:gX.checked?undefined:hh,backgroundColor:gX.checked?bY:Y,textColor:gX.disabled?gX.checked?C:dd:ca,padding:[hb,hg,gY,he],margin:[hf,hd,ha,hc]};
}},"tabview-page/button/label":{alias:bT,style:function(hi){return {padding:[0,1,0,1],margin:hi.focused?0:1};
}},"tabview-page/button/icon":dc,"tabview-page/button/close-button":{alias:dh,style:function(hj){return {cursor:hj.disabled?undefined:dj,icon:qx.theme.simple.Image.URLS[bF]};
}},"colorpopup":{alias:bX,include:bX,style:function(hk){return {padding:5};
}},"colorpopup/field":{style:function(hl){return {margin:2,width:14,height:14,backgroundColor:dg,decorator:df};
}},"colorpopup/selector-button":dk,"colorpopup/auto-button":dk,"colorpopup/preview-pane":bQ,"colorpopup/current-preview":{style:function(hm){return {height:20,padding:4,marginLeft:4,decorator:df,allowGrowX:true};
}},"colorpopup/selected-preview":{style:function(hn){return {height:20,padding:4,marginRight:4,decorator:df,allowGrowX:true};
}},"colorpopup/colorselector-okbutton":{alias:dk,include:dk,style:function(ho){return {icon:bp};
}},"colorpopup/colorselector-cancelbutton":{alias:dk,include:dk,style:function(hp){return {icon:cf};
}},"colorselector":dl,"colorselector/control-bar":dl,"colorselector/visual-pane":bQ,"colorselector/control-pane":dl,"colorselector/preset-grid":dl,"colorselector/colorbucket":{style:function(hq){return {decorator:df,width:16,height:16};
}},"colorselector/preset-field-set":bQ,"colorselector/input-field-set":bQ,"colorselector/preview-field-set":bQ,"colorselector/hex-field-composite":dl,"colorselector/hex-field":dr,"colorselector/rgb-spinner-composite":dl,"colorselector/rgb-spinner-red":dw,"colorselector/rgb-spinner-green":dw,"colorselector/rgb-spinner-blue":dw,"colorselector/hsb-spinner-composite":dl,"colorselector/hsb-spinner-hue":dw,"colorselector/hsb-spinner-saturation":dw,"colorselector/hsb-spinner-brightness":dw,"colorselector/preview-content-old":{style:function(hr){return {decorator:df,width:50,height:10};
}},"colorselector/preview-content-new":{style:function(hs){return {decorator:df,backgroundColor:ca,width:50,height:10};
}},"colorselector/hue-saturation-field":{style:function(ht){return {decorator:df,margin:5};
}},"colorselector/brightness-field":{style:function(hu){return {decorator:df,margin:[5,7]};
}},"colorselector/hue-saturation-pane":dl,"colorselector/hue-saturation-handle":dl,"colorselector/brightness-pane":dl,"colorselector/brightness-handle":dl,"app-header":{style:function(hv){return {font:cC,textColor:dt,backgroundColor:cL,padding:[8,12]};
}},"app-header-label":{style:function(hw){return {paddingTop:5};
}}}});
})();
(function(){var a="qx.theme.simple.Image";
qx.Class.define(a,{extend:qx.core.Object,statics:{URLS:{"blank":"qx/static/blank.gif","checkbox-checked":"decoration/checkbox/checked.png","checkbox-undetermined":"decoration/checkbox/undetermined.png","window-minimize":"decoration/window/minimize.gif","window-maximize":"decoration/window/maximize.gif","window-restore":"decoration/window/restore.gif","window-close":"decoration/window/close.gif","cursor-copy":"decoration/cursors/copy.gif","cursor-move":"decoration/cursors/move.gif","cursor-alias":"decoration/cursors/alias.gif","cursor-nodrop":"decoration/cursors/nodrop.gif","arrow-right":"decoration/arrows/right.gif","arrow-left":"decoration/arrows/left.gif","arrow-up":"decoration/arrows/up.gif","arrow-down":"decoration/arrows/down.gif","arrow-forward":"decoration/arrows/forward.gif","arrow-rewind":"decoration/arrows/rewind.gif","arrow-down-small":"decoration/arrows/down-small.gif","arrow-up-small":"decoration/arrows/up-small.gif","arrow-up-invert":"decoration/arrows/up-invert.gif","arrow-down-invert":"decoration/arrows/down-invert.gif","arrow-right-invert":"decoration/arrows/right-invert.gif","knob-horizontal":"decoration/splitpane/knob-horizontal.png","knob-vertical":"decoration/splitpane/knob-vertical.png","tree-minus":"decoration/tree/minus.gif","tree-plus":"decoration/tree/plus.gif","select-column-order":"decoration/table/select-column-order.png","table-ascending":"decoration/table/ascending.png","table-descending":"decoration/table/descending.png","treevirtual-line":"decoration/treevirtual/line.gif","treevirtual-minus-only":"decoration/treevirtual/only_minus.gif","treevirtual-plus-only":"decoration/treevirtual/only_plus.gif","treevirtual-minus-start":"decoration/treevirtual/start_minus.gif","treevirtual-plus-start":"decoration/treevirtual/start_plus.gif","treevirtual-minus-end":"decoration/treevirtual/end_minus.gif","treevirtual-plus-end":"decoration/treevirtual/end_plus.gif","treevirtual-minus-cross":"decoration/treevirtual/cross_minus.gif","treevirtual-plus-cross":"decoration/treevirtual/cross_plus.gif","treevirtual-end":"decoration/treevirtual/end.gif","treevirtual-cross":"decoration/treevirtual/cross.gif","menu-checkbox":"decoration/menu/checkbox.gif","menu-checkbox-invert":"decoration/menu/checkbox-invert.gif","menu-radiobutton-invert":"decoration/menu/radiobutton-invert.gif","menu-radiobutton":"decoration/menu/radiobutton.gif","tabview-close":"decoration/tabview/close.gif"}}});
})();
(function(){var j="tabview-button-border",i="button-box",h="button-box-pressed",g="background-selected",f="button-border",e="button-box-hovered",d="button-box-pressed-hovered",c="solid",b="invalid",a="gray",X="button-border-hovered",W="tabview-unselected",V="shadow",U="border-separator",T="button-box-focused",S="border-light",R="checkbox",Q="tabview-page-button-top-bottom",P="window-border",O="radiobutton",q="scroll-knob",r="tabview-page-button-right-left",o="background",p="button-box-bright",m="window-border-inner",n="white",k="button-box-bright-pressed",l="button-box-dark-pressed",u="table-header",v="button-box-invalid",C="menubar-button-hovered",A="button-box-dark",G="#999999",E="qx/decoration/Simple",K="dotted",I="button",x="tooltip-text",N="table-focus-indicator",M="button-box-pressed-invalid",L="scrollbar-dark",w="qx.theme.simple.Decoration",y="table-header-cell",z="border-lead",B="#FFF",D="button-box-pressed-focused",F="scrollbar-bright",H="border-light-shadow",J="white-box-border",s="window",t="scroll-knob-pressed";
qx.Theme.define(w,{aliases:{decoration:E},decorations:{"border-blue":{decorator:qx.ui.decoration.Uniform,style:{width:4,color:g}},"main":{decorator:qx.ui.decoration.Uniform,style:{width:1,color:g}},"main-dark":{decorator:qx.ui.decoration.Uniform,style:{width:1,color:f}},"popup":{decorator:[qx.ui.decoration.MSingleBorder,qx.ui.decoration.MBoxShadow,qx.ui.decoration.MBackgroundColor],style:{width:1,color:P,shadowLength:2,shadowBlurRadius:5,shadowColor:V}},"button-box":{decorator:[qx.ui.decoration.MLinearBackgroundGradient,qx.ui.decoration.MBorderRadius,qx.ui.decoration.MSingleBorder,qx.ui.decoration.MBackgroundColor],style:{radius:3,width:1,color:f,gradientStart:[p,40],gradientEnd:[A,70],backgroundColor:p}},"button-box-pressed":{include:i,style:{gradientStart:[k,40],gradientEnd:[l,70],backgroundColor:k}},"button-box-pressed-hovered":{include:h,style:{color:X}},"button-box-hovered":{include:i,style:{color:X}},"button-box-invalid":{include:i,style:{color:b}},"button-box-pressed-invalid":{include:h,style:{color:b}},"button-box-hovered-invalid":{include:v},"button-box-pressed-hovered-invalid":{include:M},"button-box-focused":{include:i,style:{color:g}},"button-box-pressed-focused":{include:h,style:{color:g}},"button-box-hovered-focused":{include:T},"button-box-pressed-hovered-focused":{include:D},"button-box-right":{include:i,style:{radius:[0,3,3,0]}},"button-box-pressed-right":{include:h,style:{radius:[0,3,3,0]}},"button-box-pressed-hovered-right":{include:d,style:{radius:[0,3,3,0]}},"button-box-hovered-right":{include:e,style:{radius:[0,3,3,0]}},"button-box-focused-right":{include:T,style:{radius:[0,3,3,0]}},"button-box-right-borderless":{include:i,style:{radius:[0,3,3,0],width:[1,1,1,0]}},"button-box-pressed-right-borderless":{include:h,style:{radius:[0,3,3,0],width:[1,1,1,0]}},"button-box-pressed-hovered-right-borderless":{include:d,style:{radius:[0,3,3,0],width:[1,1,1,0]}},"button-box-hovered-right-borderless":{include:e,style:{radius:[0,3,3,0],width:[1,1,1,0]}},"button-box-top-right":{include:i,style:{radius:[0,3,0,0],width:[1,1,1,0]}},"button-box-pressed-top-right":{include:h,style:{radius:[0,3,0,0],width:[1,1,1,0]}},"button-box-pressed-hovered-top-right":{include:d,style:{radius:[0,3,0,0],width:[1,1,1,0]}},"button-box-hovered-top-right":{include:e,style:{radius:[0,3,0,0],width:[1,1,1,0]}},"button-box-bottom-right":{include:i,style:{radius:[0,0,3,0],width:[0,1,1,0]}},"button-box-pressed-bottom-right":{include:h,style:{radius:[0,0,3,0],width:[0,1,1,0]}},"button-box-pressed-hovered-bottom-right":{include:d,style:{radius:[0,0,3,0],width:[0,1,1,0]}},"button-box-hovered-bottom-right":{include:e,style:{radius:[0,0,3,0],width:[0,1,1,0]}},"button-box-bottom-left":{include:i,style:{radius:[0,0,0,3],width:[0,0,1,1]}},"button-box-pressed-bottom-left":{include:h,style:{radius:[0,0,0,3],width:[0,0,1,1]}},"button-box-pressed-hovered-bottom-left":{include:d,style:{radius:[0,0,0,3],width:[0,0,1,1]}},"button-box-hovered-bottom-left":{include:e,style:{radius:[0,0,0,3],width:[0,0,1,1]}},"button-box-top-left":{include:i,style:{radius:[3,0,0,0],width:[1,0,0,1]}},"button-box-pressed-top-left":{include:h,style:{radius:[3,0,0,0],width:[1,0,0,1]}},"button-box-pressed-hovered-top-left":{include:d,style:{radius:[3,0,0,0],width:[1,0,0,1]}},"button-box-hovered-top-left":{include:e,style:{radius:[3,0,0,0],width:[1,0,0,1]}},"button-box-middle":{include:i,style:{radius:0,width:[1,0,1,1]}},"button-box-pressed-middle":{include:h,style:{radius:0,width:[1,0,1,1]}},"button-box-pressed-hovered-middle":{include:d,style:{radius:0,width:[1,0,1,1]}},"button-box-hovered-middle":{include:e,style:{radius:0,width:[1,0,1,1]}},"button-box-left":{include:i,style:{radius:[3,0,0,3],width:[1,0,1,1]}},"button-box-pressed-left":{include:h,style:{radius:[3,0,0,3],width:[1,0,1,1]}},"button-box-pressed-hovered-left":{include:d,style:{radius:[3,0,0,3],width:[1,0,1,1]}},"button-box-hovered-left":{include:e,style:{radius:[3,0,0,3],width:[1,0,1,1]}},"button-box-focused-left":{include:T,style:{radius:[3,0,0,3],width:[1,0,1,1]}},"separator-horizontal":{decorator:qx.ui.decoration.Single,style:{widthLeft:1,colorLeft:U}},"separator-vertical":{decorator:qx.ui.decoration.Single,style:{widthTop:1,colorTop:U}},"scroll-knob":{decorator:[qx.ui.decoration.MBorderRadius,qx.ui.decoration.MSingleBorder,qx.ui.decoration.MBackgroundColor],style:{radius:3,width:1,color:f,backgroundColor:F}},"scroll-knob-pressed":{include:q,style:{backgroundColor:L}},"scroll-knob-hovered":{include:q,style:{color:X}},"scroll-knob-pressed-hovered":{include:t,style:{color:X}},"button-hover":{decorator:[qx.ui.decoration.MBackgroundColor,qx.ui.decoration.MBorderRadius],style:{backgroundColor:I,radius:3}},"window":{decorator:[qx.ui.decoration.MDoubleBorder,qx.ui.decoration.MBoxShadow,qx.ui.decoration.MBackgroundColor],style:{width:1,color:P,innerWidth:4,innerColor:m,shadowLength:1,shadowBlurRadius:3,shadowColor:V,backgroundColor:o}},"window-active":{include:s,style:{shadowLength:2,shadowBlurRadius:5}},"window-caption":{decorator:qx.ui.decoration.Single,style:{width:[0,0,2,0],color:m}},"white-box":{decorator:[qx.ui.decoration.MBorderRadius,qx.ui.decoration.MBoxShadow,qx.ui.decoration.MSingleBorder,qx.ui.decoration.MBackgroundColor],style:{width:1,color:J,shadowBlurRadius:2,shadowColor:G,radius:7,backgroundColor:n}},"inset":{decorator:qx.ui.decoration.Single,style:{width:1,color:[H,S,S,S]}},"focused-inset":{decorator:qx.ui.decoration.Uniform,style:{width:2,color:g}},"border-invalid":{decorator:qx.ui.decoration.Uniform,style:{width:2,color:b}},"lead-item":{decorator:qx.ui.decoration.Uniform,style:{width:1,style:K,color:z}},"tooltip":{decorator:[qx.ui.decoration.MSingleBorder,qx.ui.decoration.MBackgroundColor,qx.ui.decoration.MBoxShadow],style:{width:1,color:x,shadowLength:1,shadowBlurRadius:2,shadowColor:V}},"tooltip-error":{decorator:[qx.ui.decoration.MBorderRadius,qx.ui.decoration.MBackgroundColor],style:{radius:5,backgroundColor:b}},"toolbar-separator":{decorator:qx.ui.decoration.Single,style:{widthLeft:1,colorLeft:f}},"menu-separator":{decorator:qx.ui.decoration.Single,style:{widthTop:1,colorTop:g}},"menubar-button-hovered":{decorator:[qx.ui.decoration.MSingleBorder,qx.ui.decoration.MBorderRadius,qx.ui.decoration.MBackgroundColor],style:{width:1,color:g,radius:3,backgroundColor:n}},"menubar-button-pressed":{include:C,style:{radius:[3,3,0,0],width:[1,1,0,1]}},"datechooser-date-pane":{decorator:qx.ui.decoration.Single,style:{widthTop:1,colorTop:a,style:c}},"datechooser-weekday":{decorator:qx.ui.decoration.Single,style:{widthBottom:1,colorBottom:a,style:c}},"datechooser-week":{decorator:qx.ui.decoration.Single,style:{widthRight:1,colorRight:a,style:c}},"datechooser-week-header":{decorator:qx.ui.decoration.Single,style:{widthBottom:1,colorBottom:a,widthRight:1,colorRight:a,style:c}},"tabview-page-button-top-bottom":{decorator:qx.ui.decoration.Single,style:{width:[0,1],color:j}},"tabview-page-button-top-bottom-first":{include:Q,style:{color:[j,j,j,W]}},"tabview-page-button-top-bottom-last":{include:Q,style:{color:[j,W,j,j]}},"tabview-page-button-right-left":{decorator:qx.ui.decoration.Single,style:{width:[1,0],color:j}},"tabview-page-button-right-left-first":{include:r,style:{color:[W,j,j,j]}},"tabview-page-button-right-left-last":{include:r,style:{color:[j,j,W,j]}},"statusbar":{decorator:qx.ui.decoration.Single,style:{widthTop:1,colorTop:g,styleTop:c}},"table-scroller-focus-indicator":{decorator:qx.ui.decoration.Single,style:{width:2,color:N,style:c}},"table-header":{include:i,style:{radius:0,width:[1,0,1,0]}},"table-header-column-button":{include:u,style:{width:1,color:f}},"table-header-cell":{decorator:qx.ui.decoration.Single,style:{widthRight:1,color:f}},"table-header-cell-first":{include:y,style:{widthLeft:1}},"progressbar":{decorator:qx.ui.decoration.Single,style:{backgroundColor:B,width:1,color:U}},"radiobutton":{decorator:[qx.ui.decoration.MBorderRadius,qx.ui.decoration.MDoubleBorder,qx.ui.decoration.MBackgroundColor],style:{radius:10,width:1,color:f,innerColor:o,innerWidth:2}},"radiobutton-focused":{include:O,style:{color:g}},"radiobutton-invalid":{include:O,style:{color:b}},"checkbox":{decorator:[qx.ui.decoration.MSingleBorder,qx.ui.decoration.MBackgroundColor],style:{width:1,color:f}},"checkbox-focused":{include:R,style:{color:g}},"checkbox-invalid":{include:R,style:{color:b}}}});
})();
(function(){var f="sans-serif",e="arial",d="monospace",c="Courier New",b="qx.theme.simple.Font",a="DejaVu Sans Mono";
qx.Theme.define(b,{fonts:{"default":{size:13,family:[e,f]},"bold":{size:13,family:[e,f],bold:true},"headline":{size:24,family:[f,e]},"small":{size:11,family:[e,f]},"monospace":{size:11,family:[a,c,d]}}});
})();
(function(){var j="white",i="#5685D6",h="black",g="#6694E3",f="#EEE",e="gray",d="#D9D9D9",c="#1866B5",b="#24B",a="#FF0000",N="#CCCCCC",M="rgba(0, 0, 0, 0.4)",L="#FFFFE1",K="#B7B7B7",J="#BBBBBB",I="#9DCBFE",H="#A7A6AA",G="#EBEBEB",F="#666666",E="#CBC8CD",q="#F9F9F9",r="#F7F7F7",o="#808080",p="#686868",m="#888888",n="#E0ECFF",k="#2E3A46",l="css.rgba",s="#F5F5F5",t="#E3E3E3",w="#DDDDDD",v="#BBB",y="qx.theme.simple.Color",x="#F1F1F1",A="#939393",z="#BCBCBC",u="#134983",D="#E8F0E3",C="#FAFBFE",B="#AAAAAA";
qx.Theme.define(y,{colors:{"background":j,"dark-blue":i,"light-background":n,"background-selected":g,"background-selected-dark":i,"background-disabled":r,"background-disabled-checked":J,"background-pane":C,"tabview-unselected":c,"tabview-button-border":u,"tabview-label-active-disabled":d,"link":b,"scrollbar-bright":x,"scrollbar-dark":G,"button":D,"button-border":v,"button-border-hovered":A,"invalid":a,"button-box-bright":q,"button-box-dark":t,"button-box-bright-pressed":w,"button-box-dark-pressed":s,"border-lead":m,"window-border":k,"window-border-inner":I,"white-box-border":z,"shadow":qx.core.Environment.get(l)?M:F,"border-main":g,"border-light":K,"border-light-shadow":p,"border-separator":o,"text":h,"text-disabled":H,"text-selected":j,"text-placeholder":E,"tooltip":L,"tooltip-text":h,"table-header":[242,242,242],"table-focus-indicator":[179,217,255],"table-header-cell":[235,234,219],"table-row-background-focused-selected":[90,138,211],"table-row-background-focused":[221,238,255],"table-row-background-selected":[51,94,168],"table-row-background-even":j,"table-row-background-odd":j,"table-row-selected":[255,255,255],"table-row":[0,0,0],"table-row-line":f,"table-column-line":f,"progressive-table-header":B,"progressive-table-row-background-even":[250,248,243],"progressive-table-row-background-odd":[255,255,255],"progressive-progressbar-background":e,"progressive-progressbar-indicator-done":N,"progressive-progressbar-indicator-undone":j,"progressive-progressbar-percent-background":e,"progressive-progressbar-percent-text":j}});
})();
(function(){var b="Simple",a="qx.theme.Simple";
qx.Theme.define(a,{title:b,meta:{color:qx.theme.simple.Color,decoration:qx.theme.simple.Decoration,font:qx.theme.simple.Font,appearance:qx.theme.simple.Appearance,icon:qx.theme.icon.Tango}});
})();
(function(){var k="batteryHalf.png",j="deviceConfigOn.png",h="telephone.png",g="Hist",f="alarmOn.png",e="batteryLow.png",d="State",c="Rules",b="alarmOff.png",a="deviceAutoTrackingOn.png",G="track.devicestable.DevicesTableRemote",F="showingOnMapOff.png",E="deviceAutoTrackingOff.png",D="deviceStateSleep.png",C="batteryFull.png",B="Auto",A="Alarm",z="deviceStateOff.png",y="deviceAutoTrackingOnCentered.png",x="batteryCharger.png",r="rulesOff.png",s="deviceStateOn.png",p="showingOnMapOn.png",q="Bat",n="Show",o="Conf",l="rulesOn.png",m="batteryNA.png",t="32/statusLine/",u="deviceStateUnknown.png",w="deviceStateNoGPS.png",v="historyTracksOn.png";
qx.Class.define(G,{extend:qx.core.Object,construct:function(H){qx.core.Object.call(this);
this.trackGui=H;
},members:{create:function(){var R=[d,q,A,g,o,c,B,n];
function V(name){return xbGetIcon(t+name);
}var P=[w,z,s,D,u];
var I=[x,C,k,e,m];
var M=[b,f];
var N=[v];
var S=[j];
var K=[r,l];
var L=[E,y,a];
var J=[F,p];
var O=[h];
var Q=[];

for(var W=0;W<20;W++){Q.push([V(P[Math.floor(Math.random()*1000)%5]),V(I[Math.floor(Math.random()*1000)%5]),V(M[Math.floor(Math.random()*1000)%2]),V(N[0]),V(S[0]),V(K[Math.floor(Math.random()*1000)%2]),V(L[Math.floor(Math.random()*1000)%3]),V(J[Math.floor(Math.random()*1000)%2])]);
}var U=new qx.ui.table.model.Simple();
U.setColumns(R);
U.setData(Q);
var T=new qx.ui.table.Table(U);
T.setRowHeight(32);

for(var i=0;i<U.getColumnCount();i++){T.getTableColumnModel().setDataCellRenderer(i,new qx.ui.table.cellrenderer.Image(32,32));
}return T;
}}});
})();
(function(){var n="execute",m="Button",l="excluded",k="red",j="visible",i="logoutPre",h="22/userAdmin.png",g="browser info",f="loginDone",d="expiry info",bq="statisticWindow.enabled",bp="poiConfig.show",bo="hide",bn="Internet Explorer has limitations, <a href='%1' target='_blank'>see details</a>",bm="poiConfigVisible",bl="POI Config",bk="statisticWindow.show",bj="poiReport.show",bi="renewWarningDays",bh="22/video.png",u="poiReportVisible",v="videoUrl",s="Geofence",t="Rules",q="Replication",r="Wichtige Info: <a href='http://gpsvision.de/index.php/component/content/article/101-sample-news/1331-wichtige-hinweise-fuer-tracking-portalkunden' target='NEUE SERVER'>Serverumstellung am Wochenende, hier klicken!</a>",o="22/rules/rules.png",p="Your account expires today. <a href='%1' target='_blank'>Renew now</a>",B="popupStatisticWindow failed: ",C="Your account expires tomorrow. <a href='%2' target='_blank'>Renew now</a>",M="warningLabel.color",J="22/statistic.png",U="userAdmin",P="http://gpsvision.de/portalhelp",bd="renew",ba="showMenuBarVideoButton",F="middle",bg="Your account is expired since %1 days. <a href='%2' target='_blank'>Renew now</a>",bf="internetExplorerLimitations.url",be="loginAccountToGot",E="videoWindow.enabled",H="homeViewSelectBox.show",I="22/devices/pda.png",L="popupPoiConfigWindow failed: ",N="track.mainview.MenuBar",Q="22/apps/utilities-notes.png",W="_blank",bc="Statistic",w="Your account expires in %1 days. <a href='%2' target='_blank'>Renew now</a>",x="popupPoiReportWindow failed: ",G="http://gpsvision.de/index.php/tracking-portal/tracking-portal-video-hilfe",T="warningLabelPostLogin.color",S="GPSvision",R="Video-Help",Y="POI Report",X="renewUrl",O="22/rules/geofence.png",V="replicationAdmin",a="geofenceWindow.enabled",bb="rulesWindow.enabled",y="warningLabel.text",z="Internet Explorer is not supported, please use the free <a href='http://www.mozilla.com' target='_blank'>Firefox</a>",K="User Admin",b="videoButton.url",c="left",D="Exception in MenuBar.js loginDoneListenerFunc",A="warningLabelPostLogin.text";
qx.Class.define(N,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(br){qx.core.Object.call(this);
this.trackGui=br;
this.loginPostListenerFunc=null;
this.logoutPreListenerFunc=null;
this.menuBarContainer=null;
this.videoButton=null;
this.homeViewSelectBox=null;
this.maxColHack=0;
},members:{makeMenuBar:function(){var bs=new qx.ui.layout.Grid(5,5);
bs.setColumnAlign(0,c,F);
bs.setRowHeight(0,12);
bs.setRowHeight(1,22);
this.menuBarContainer=new qx.ui.container.Composite(bs);
var bv=0;
var bt=0;
this.showInternetExplorerWarning();
this.showCustomizedWarning();
bv=1;
bt=0;
this.geofenceButton=new qx.ui.form.Button(this.trc(m,s),xbGetIcon(O));
this.menuBarContainer.add(this.geofenceButton,{row:bv,column:bt++});
this.geofenceButton.addListener(n,function(e){this.info("MenuBar.js: Pressed Geofence");

if(this.trackGui.watchee==null)return;
this.trackGui.getWindowManager().popupGeofenceWindow();
},this);
this.rulesButton=new qx.ui.form.Button(this.trc(m,t),xbGetIcon(o));
this.menuBarContainer.add(this.rulesButton,{row:bv,column:bt++});
this.rulesButton.addListener(n,function(e){this.info("MenuBar.js: Pressed Rules");

if(this.trackGui.watchee==null)return;
this.trackGui.getWindowManager().popupRulesWindow();
},this);
this.statisticButton=new qx.ui.form.Button(this.trc(m,bc),xbGetIcon(J));
this.menuBarContainer.add(this.statisticButton,{row:bv,column:bt++});
this.statisticButton.addListener(n,function(e){if(this.trackGui.watchee==null)return;

try{this.trackGui.getWindowManager().popupStatisticWindow(null);
}catch(bw){this.trackGui.errorMsgBoxDeveloper(B+bw);
}},this);
if(xbProperties.getBoolean(H,true)){this.homeViewSelectBox=new track.mainview.HomeViewSelectBox(this.trackGui);
this.menuBarContainer.add(this.homeViewSelectBox,{row:bv,column:bt++});
}this.poiReportButton=new qx.ui.form.Button(this.trc(m,Y),xbGetQxIcon(Q));
this.poiReportButton.addListener(n,function(e){try{this.trackGui.getWindowManager().popupPoiReportWindow();
}catch(bx){this.trackGui.errorMsgBoxDeveloper(x+bx);
}},this);
this.poiReportButton.setVisibility(l);
this.menuBarContainer.add(this.poiReportButton,{row:bv,column:bt++});
this.poiConfigButton=new qx.ui.form.Button(this.trc(m,bl),xbGetQxIcon(I));
this.poiConfigButton.addListener(n,function(e){try{this.trackGui.getWindowManager().popupPoiConfigWindow();
}catch(by){this.trackGui.errorMsgBoxDeveloper(L+by);
}},this);
this.poiConfigButton.setVisibility(l);
this.menuBarContainer.add(this.poiConfigButton,{row:bv,column:bt++});
this.checkShowingVideoButton(bv,bt++);
if(xbProperties.getBoolean(U,false)==true){this.userAdminButton=new qx.ui.form.Button(this.trc(m,K),xbGetIcon(h));
this.menuBarContainer.add(this.userAdminButton,{row:bv,column:bt++});
this.userAdminButton.addListener(n,function(e){this.info("MenuBar.js: Pressed User Admin");

if(this.trackGui.watchee==null)return;
this.trackGui.getWindowManager().popupUserAdminWindow();
},this);
}
if(xbProperties.getBoolean(V,false)==true){this.replicationButton=new qx.ui.form.Button(this.trc(m,q),xbGetIcon(h));
this.menuBarContainer.add(this.replicationButton,{row:bv,column:bt++});
this.replicationButton.addListener(n,function(e){this.info("MenuBar.js: Pressed Replication Admin");

if(this.trackGui.watchee==null)return;
this.trackGui.getWindowManager().popupReplicationWindow();
},this);
}this.maxColHack=bt;
this.enableButtons(false);
this.registerListeners();
var bu=new qx.ui.container.Scroll(this.menuBarContainer);
return bu;
},showCustomizedWarning:function(){var bC=null;
var bB=null;

if(isGpsVision){bB=null;
}var bz=xbProperties.getStr(y,bB);

if(bz==null){return false;
}var bC=new qx.ui.basic.Label(bz);
bC.setRich(true);
var bA=xbProperties.getStr(M,k);

if(bA.length>0){bC.setTextColor(bA);
}this.showWarningAtVeryTop(bC);
return true;
},showCustomizedWarningPostLogin:function(){var bH=null;
var bG=null;
var bF=this.trackGui.getMyOemName();

if(isGpsVision&&bF==S){bG=r;
}var bD=xbProperties.getStr(A,bG);

if(bD==null){return false;
}var bH=new qx.ui.basic.Label(bD);
bH.setRich(true);
var bE=xbProperties.getStr(T,k);

if(bE.length>0){bH.setTextColor(bE);
}this.showWarningAtVeryTop(bH);
return true;
},showInternetExplorerWarning:function(){if(org.xmlBlaster.util.isIE){var bJ=null;
var bI=xbProperties.getStr(bf,null);

if(bI==null){bJ=new qx.ui.basic.Label(this.trc(g,z));
bJ.setRich(true);
bJ.setTextColor(k);
this.showWarningAtVeryTop(bJ);
}else if(bI==bo){;
}else{bJ=new qx.ui.basic.Label(this.trc(g,bn,bI));
bJ.setRich(true);
this.showWarningAtVeryTop(bJ);
}}},showExpiryWarning:function(){var bN=-9999;
var bM=xbProperties.getInt(bi,7);

if(bM==-1){return bN;
}var bK=this.trackGui.getMyAccountTO().getEndDate();

if(bK==null){return bN;
}var bR=new Date();
var bP=bK.getTime()-bR.getTime();
var bL=org.xmlBlaster.util.getDiffDateHumanReadable(bP);
bN=bL.days;

if(bP<0)bN*=-1;
if(bN<bM){var bO=this.trackGui.getMyOemLink(X,P,bd);
var bQ=null;

if(bN>0){bQ=new qx.ui.basic.Label(this.trn(C,w,bN,bN,bO));
}else if(bN==0){bQ=new qx.ui.basic.Label(this.trc(d,p,bO));
}else{bQ=new qx.ui.basic.Label(this.trc(d,bg,bN,bO));
}bQ.setRich(true);
bQ.setTextColor(k);
this.showWarningAtVeryTop(bQ);
}return bN;
},onLogout:function(){this.showWarningAtVeryTop(null);
this.showInternetExplorerWarning();
},showWarningAtVeryTop:function(bS){var bS=bS||null;
var bU=0;
var bW=0;

try{var bT=this.menuBarContainer.getLayout().getCellWidget(bU,bW);

if(bT!=null){this.menuBarContainer.remove(bT);
}}catch(bX){this.error("Can't remove widget from menuBar: "+bX);
}
if(bS==null){return;
}var bV=4;
this.menuBarContainer.add(bS,{row:bU,column:bW,colSpan:bV});
bW+=bV;
},enableButtons:function(bY){this.menuBarContainer.setEnabled(bY);
this.geofenceButton.setEnabled(xbProperties.getBoolean(a,true)&&bY);
this.rulesButton.setEnabled(xbProperties.getBoolean(bb,true)&&bY);
this.statisticButton.setEnabled(xbProperties.getBoolean(bq,true)&&bY);
if(this.videoButton!=null)this.videoButton.setEnabled(xbProperties.getBoolean(E,true)&&bY);
},checkShowingVideoButton:function(ca,cb){if(xbProperties.getBoolean(ba,false)){this.__uI(ca,cb);
}else{this.__uJ();
}},__uI:function(cc,cd){if(this.videoButton!=null)return;
this.videoButton=new qx.ui.form.Button(this.trc(m,R),xbGetIcon(bh));
this.menuBarContainer.add(this.videoButton,{row:cc,column:cd});
this.videoButton.addListener(n,function(e){this.info("MenuBar.js: Pressed Video");
var ce=this.trackGui.getMyOemProperty(v,G);
ce=xbProperties.getStr(b,ce);
window.open(ce,W);
if(this.trackGui.watchee==null)return;
},this);
},__uJ:function(){if(this.videoButton==null)return;
this.menuBarContainer.remove(this.videoButton);
this.videoButton.destroy();
this.videoButton=null;
},checkShowingButtons:function(){this.checkShowingVideoButton(1,3);
var ck=this.trackGui.getMyAccountTO();
var cg=ck.hasPermissionPoiConfig();
var ch=xbProperties.getStr(bp,xbProperties.getStr(bm,cg));
this.poiConfigButton.setVisibility(ch?j:l);
var cj=ck.hasPermissionPoiReport();
var ci=xbProperties.getStr(bj,xbProperties.getStr(u,cj));
this.poiReportButton.setVisibility(ci?j:l);
var cf=ck.hasPermissionStatistic();
var cl=xbProperties.getBoolean(bk,cf);
this.statisticButton.setVisibility(cl?j:l);
},registerListeners:function(){this.loginDoneListenerFunc=this.trackGui.getEventManager().addListener(f,function(cm){this.enableButtons(true);

try{if(this.homeViewSelectBox!=null){this.homeViewSelectBox.updateItems();
}this.showCustomizedWarningPostLogin();
}catch(cn){this.trackGui.errorMsgBoxDeveloper(D,cn);
}},this);
this.logoutPreListenerFunc=this.trackGui.getEventManager().addListener(i,function(co){this.enableButtons(false);

if(this.homeViewSelectBox!=null){this.homeViewSelectBox.logoutPre();
}},this);
},clear:function(){if(this.loginPostListenerFunc!=null){this.trackGui.getEventManager().removeListener(be,this.loginPostListenerFunc);
this.loginPostListenerFunc=null;
}
if(this.logoutPreListenerFunc!=null){this.trackGui.getEventManager().removeListener(i,this.logoutPreListenerFunc);
this.logoutPreListenerFunc=null;
}
if(this.loginDoneListenerFunc!=null){this.trackGui.getEventManager().removeListener(f,this.loginDoneListenerFunc);
this.loginDoneListenerFunc=null;
}}}});
})();
(function(){var s="homeView",r="atom",q="ComboBox",p="16/actions/go-home.png",o="22/actions/go-home.png",n="popup",m="ToolTip",l="errorBox",k="<New home view>",j="changeSelection",c="16/actions/list-add.png",h="changeHomeView",g="Loading home view failed: %1",b="Berlin",a="Add new home views under Config",f="track.mainview.HomeViewSelectBox",d="qx.event.type.Data";
qx.Class.define(f,{extend:qx.ui.form.SelectBox,construct:function(t){this.trackGui=t;
qx.ui.form.SelectBox.call(this);
this.getChildControl(r).setAnonymous(false);
this.noEvent=false;
this.configMode=false;
this.newHomeView=null;
this.setToolTipText(this.trc(m,a));
this.icon=xbGetQxIcon(o);
this.addListener(j,function(e){if(this.noEvent)return;
var u=(e.getData().length==0)?null:e.getData()[0];
this._centerHomeView(u);
},this);
},events:{"changeHomeView":d},members:{setConfigMode:function(){this.configMode=true;
this.icon=xbGetQxIcon(p);
this.resetToolTipText();
this.newHomeView=new net.watchee.HomeView(this.trc(q,k),0,0,0);
},updateItems:function(){this.removeAll();
var w=this.trackGui.getMyAccountTO().getHomeViewsData();
var x=w.getArr();

if(x.length<1)x.push(this.createDummyEntry());

if(this.configMode){var v=this.parseListItem(this.newHomeView);
v.setIcon(xbGetQxIcon(c));
this._addNoEvent(v);
}
if(x.length>0&&x!=null){for(var i=0;i<x.length;i++){this._addNoEvent(this.parseListItem(x[i]));
}}},logoutPre:function(){this.removeAll();
},createDummyEntry:function(){return new net.watchee.HomeView(b,52.5,13.4,11);
},parseListItem:function(y){var z=new qx.ui.form.ListItem(y.getName(),this.icon);
z.setUserData(s,y);
return z;
},_addNoEvent:function(A){this.noEvent=true;
this.add(A);
this.noEvent=false;
},_onClick:function(e){var B=e.getTarget();

if(B==this.getChildControl(r)&&!this.getChildControl(n).isVisible()){var C=this.getSelection()[0];
this._centerHomeView(C);
}else{this.toggle();
}},_centerHomeView:function(D){if(D==null)return;

if(this.trackGui.watchee==null)return;
var E=D.getUserData(s);

if(E==null)return;

try{if(E!=this.newHomeView)this.trackGui.watchee.getMapManager().setCenterAndZoom(E.getLat(),E.getLon(),E.getZoom());
this.fireDataEvent(h,E);
}catch(F){this.trackGui.errorMsgBoxDeveloper(this.trc(l,g,F));
}}}});
})();
(function(){var k="right",j="Login",i="execute",h="errorMsgBox title",g="click",f="bold",d="red",c="Enter",b="submitLoginButton.enabled",a="Password",H="16/actions/dialog-ok.png",G="preferenceWindow.enabled",F="Login name",E="22/Flag_Germany.png",D="Login problem",C="password",B="The Password Label",A="The Login name Label",z="track.mainview.LoginForm",y="loginName",r="Button Label",s="middle",p="Logout problem",q="16/actions/go-home.png",n="public",o="",l="Config",m="The Config Button",t="de",u="The Login Button",w="keypress",v="en",x="22/Flag_England.png";
qx.Class.define(z,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(I){qx.core.Object.call(this);
this.trackGui=I;
},members:{makeLoginForm:function(){var O=new qx.ui.layout.Grid(10,10);
O.setColumnAlign(0,k,s);
O.setRowHeight(0,22);
O.setRowHeight(1,22);
var K=new qx.ui.container.Composite(O);
var L=new qx.ui.basic.Label(this.trc(A,F));

with(L){setFont(f);
setTextColor(watcheeOrange);
}K.add(L,{row:0,column:0});
var J=xbProperties.getStr(y,o).toLowerCase();
this.loginTextField=new qx.ui.form.TextField(J);
K.add(this.loginTextField,{row:0,column:1});
var N=new qx.ui.basic.Label(this.trc(B,a));

with(N){setFont(f);
setTextColor(watcheeOrange);
}K.add(N,{row:1,column:0});
this.passwordTextField=new qx.ui.form.PasswordField(xbProperties.getStr(C,n));
K.add(this.passwordTextField,{row:1,column:1});
this.clickedLoginButtonIsProcessing=false;
this.passwordTextField.addListener(w,function(P){if(P.getKeyIdentifier()==c){this.clickedLoginButton();
}},this);
this.configureButton=new qx.ui.form.Button(this.trc(m,l),xbGetQxIcon(q));

with(this.configureButton){setAlignX(k);
setEnabled(false);
}K.add(this.configureButton,{row:0,column:2});
this.submitLoginButton=new qx.ui.form.Button(this.trc(u,j),xbGetQxIcon(H));
this.submitLoginButton.setEnabled(xbProperties.getBoolean(b,true));

with(this.submitLoginButton){setAlignX(k);
setBackgroundColor(d);
}K.add(this.submitLoginButton,{row:1,column:2});
this.configureButton.addListener(i,function(e){if(this.trackGui.watchee==null)return;
this.trackGui.createPreferenceWindow();
},this);
this.clickedLoginButtonIsProcessing=false;
this.submitLoginButton.addListener(i,function(e){this.clickedLoginButton();
},this);
var M=new qx.ui.basic.Atom(null,xbGetIcon(x));
M.addListener(g,function(e){qx.locale.Manager.getInstance().setLocale(v);
},this);
K.add(M,{row:0,column:3});
var M=new qx.ui.basic.Atom(null,xbGetIcon(E));
M.addListener(g,function(e){qx.locale.Manager.getInstance().setLocale(t);
},this);
K.add(M,{row:1,column:3});
return K;
},clickedLoginButton:function(){if(this.clickedLoginButtonIsProcessing)return;
this.clickedLoginButtonIsProcessing=true;
var Q=(this.trackGui.watchee==null);

try{if(this.trackGui.watchee!=null){this.trackGui.logout();
}else{this.trackGui.sessionProfile.activateLoginName(this.getLoginTextFieldValue());
this.trackGui.makeEmbeddedMapFrame();
this.trackGui.loginExecute(this.getLoginTextFieldValue(),this.passwordTextField.getValue());
}}catch(R){this.trackGui.errorMsgBox((Q?this.trc(h,D):this.trc(h,p)),R);
}this.clickedLoginButtonIsProcessing=false;
},getLoginTextFieldValue:function(){var S=org.xmlBlaster.util.trim(this.loginTextField.getValue());
return S.toLowerCase();
},setPasswordTextFieldValue:function(T){this.passwordTextField.setValue(T);
},getPasswordTextFieldValue:function(){return this.passwordTextField.getValue();
},setSubmitLoginButtonLabel:function(U){this.submitLoginButton.setLabel(U);
},isLoggedIn:function(){if(xbProperties.getBoolean(G,true)){this.configureButton.setEnabled(true);
}this.submitLoginButton.resetBackgroundColor();
},isLoggedOut:function(){this.configureButton.setEnabled(false);
this.submitLoginButton.setLabel(this.trc(r,j));
this.submitLoginButton.setBackgroundColor(d);
}},destruct:function(){this._disposeFields();
this._disposeObjects();
}});
})();
(function(){var k="slider",j="splitter",i="horizontal",h="px",g="vertical",f="knob",d="mousedown",c="mouseout",b="Integer",a="height",D="mousemove",C="move",B="maxHeight",A="resize",z="width",w="_applyOrientation",v="_applyOffset",u="splitpane",t="qx.ui.splitpane.Pane",s="top",q="minHeight",r="mouseup",o="minWidth",p="appear",m="losecapture",n="left",l="maxWidth";
qx.Class.define(t,{extend:qx.ui.core.Widget,construct:function(E){qx.ui.core.Widget.call(this);
this.__fg=[];
if(E){this.setOrientation(E);
}else{this.initOrientation();
}this.__jW.addListener(d,this._onMouseDown,this);
this.__jW.addListener(r,this._onMouseUp,this);
this.__jW.addListener(D,this._onMouseMove,this);
this.__jW.addListener(c,this._onMouseOut,this);
this.__jW.addListener(m,this._onMouseUp,this);
},properties:{appearance:{refine:true,init:u},offset:{check:b,init:6,apply:v},orientation:{init:i,check:[i,g],apply:w}},members:{__uK:null,__uL:false,__uM:null,__uN:null,__nw:null,__uO:null,__uP:null,__fg:null,__jW:null,_createChildControlImpl:function(F,G){var H;

switch(F){case k:H=new qx.ui.splitpane.Slider(this);
H.exclude();
this._add(H,{type:F});
break;
case j:H=new qx.ui.splitpane.Splitter(this);
this._add(H,{type:F});
H.addListener(C,this.__uQ,this);
break;
}return H||qx.ui.core.Widget.prototype._createChildControlImpl.call(this,F);
},__uQ:function(e){this.__uS(e.getData());
},__uR:function(I){this.__jW=new qx.ui.splitpane.Blocker(I);
this.getContentElement().add(this.__jW);
var J=this.getChildControl(j);
var K=J.getWidth();

if(!K){J.addListenerOnce(p,function(){this.__uS();
},this);
}J.addListener(A,function(e){var L=e.getData();

if(L.height==0||L.width==0){this.__jW.hide();
}else{this.__jW.show();
}},this);
},getBlocker:function(){return this.__jW;
},_applyOrientation:function(M,N){var O=this.getChildControl(k);
var R=this.getChildControl(j);
this.__nw=M===i;

if(!this.__jW){this.__uR(M);
}this.__jW.setOrientation(M);
var Q=this._getLayout();

if(Q){Q.dispose();
}var P=M===g?new qx.ui.splitpane.VLayout:new qx.ui.splitpane.HLayout;
this._setLayout(P);
R.removeState(N);
R.addState(M);
R.getChildControl(f).removeState(N);
R.getChildControl(f).addState(M);
O.removeState(N);
O.addState(M);
qx.ui.core.queue.Manager.flush();
this.__uS();
},_applyOffset:function(S,T){this.__uS();
},__uS:function(U){var V=this.getChildControl(j);
var ba=this.getOffset();
var bb=V.getBounds();
var Y=V.getContainerElement().getDomElement();
if(!Y){return;
}if(this.__nw){var X=null;

if(U){X=U.width;
}else if(bb){X=bb.width;
}var bc=U&&U.left;

if(X){if(isNaN(bc)){bc=qx.bom.element.Location.getPosition(Y).left;
}this.__jW.setWidth(ba,X);
this.__jW.setLeft(ba,bc);
}}else{var W=null;

if(U){W=U.height;
}else if(bb){W=bb.height;
}var top=U&&U.top;

if(W){if(isNaN(top)){top=qx.bom.element.Location.getPosition(Y).top;
}this.__jW.setHeight(ba,W);
this.__jW.setTop(ba,top);
}}},add:function(bd,be){if(be==null){this._add(bd);
}else{this._add(bd,{flex:be});
}this.__fg.push(bd);
},remove:function(bf){this._remove(bf);
qx.lang.Array.remove(this.__fg,bf);
},getChildren:function(){return this.__fg;
},_onMouseDown:function(e){if(!e.isLeftPressed()){return;
}var bg=this.getChildControl(j);
var bi=bg.getContainerLocation();
var bh=this.getContentLocation();
this.__uK=this.__nw?e.getDocumentLeft()-bi.left+bh.left:e.getDocumentTop()-bi.top+bh.top;
var bk=this.getChildControl(k);
var bj=bg.getBounds();
bk.setUserBounds(bj.left,bj.top,bj.width,bj.height);
bk.setZIndex(bg.getZIndex()+1);
bk.show();
this.__uL=true;
this.__jW.capture();
e.stop();
},_onMouseMove:function(e){this._setLastMousePosition(e.getDocumentLeft(),e.getDocumentTop());
if(this.__uL){this.__uT();
var bl=this.getChildControl(k);
var bm=this.__uO;

if(this.__nw){bl.setDomLeft(bm);
this.__jW.setStyle(n,(bm-this.getOffset())+h);
}else{bl.setDomTop(bm);
this.__jW.setStyle(s,(bm-this.getOffset())+h);
}e.stop();
}},_onMouseOut:function(e){this._setLastMousePosition(e.getDocumentLeft(),e.getDocumentTop());
},_onMouseUp:function(e){if(!this.__uL){return;
}this._finalizeSizes();
var bn=this.getChildControl(k);
bn.exclude();
this.__uL=false;
this.releaseCapture();
e.stop();
},_finalizeSizes:function(){var br=this.__uO;
var bo=this.__uP;

if(br==null){return;
}var bt=this._getChildren();
var bs=bt[2];
var bp=bt[3];
var bq=bs.getLayoutProperties().flex;
var bu=bp.getLayoutProperties().flex;
if((bq!=0)&&(bu!=0)){bs.setLayoutProperties({flex:br});
bp.setLayoutProperties({flex:bo});
}else{if(this.__nw){bs.setWidth(br);
bp.setWidth(bo);
}else{bs.setHeight(br);
bp.setHeight(bo);
}}},__uT:function(){if(this.__nw){var bx=o,bE=z,by=l,bC=this.__uM;
}else{var bx=q,bE=a,by=B,bC=this.__uN;
}var bD=this._getChildren();
var bv=bD[2].getSizeHint();
var bA=bD[3].getSizeHint();
var bB=bD[2].getBounds()[bE]+bD[3].getBounds()[bE];
var bz=bC-this.__uK;
var bw=bB-bz;
if(bz<bv[bx]){bw-=bv[bx]-bz;
bz=bv[bx];
}else if(bw<bA[bx]){bz-=bA[bx]-bw;
bw=bA[bx];
}if(bz>bv[by]){bw+=bz-bv[by];
bz=bv[by];
}else if(bw>bA[by]){bz+=bw-bA[by];
bw=bA[by];
}this.__uO=bz;
this.__uP=bw;
},_isActiveDragSession:function(){return this.__uL;
},_setLastMousePosition:function(x,y){this.__uM=x;
this.__uN=y;
}},destruct:function(){this.__fg=null;
}});
})();
(function(){var a="qx.ui.splitpane.Slider";
qx.Class.define(a,{extend:qx.ui.core.Widget,properties:{allowShrinkX:{refine:true,init:false},allowShrinkY:{refine:true,init:false}}});
})();
(function(){var e="center",d="knob",c="middle",b="qx.ui.splitpane.Splitter",a="vertical";
qx.Class.define(b,{extend:qx.ui.core.Widget,construct:function(f){qx.ui.core.Widget.call(this);
if(f.getOrientation()==a){this._setLayout(new qx.ui.layout.HBox(0,e));
this._getLayout().setAlignY(c);
}else{this._setLayout(new qx.ui.layout.VBox(0,c));
this._getLayout().setAlignX(e);
}this._createChildControl(d);
},properties:{allowShrinkX:{refine:true,init:false},allowShrinkY:{refine:true,init:false}},members:{_createChildControlImpl:function(g,h){var i;

switch(g){case d:i=new qx.ui.basic.Image;
this._add(i);
break;
}return i||qx.ui.core.Widget.prototype._createChildControlImpl.call(this,g);
}}});
})();
(function(){var u="px",t="horizontal",s="top",r="height",q="width",p="100%",o="left",n="cursor",m="mshtml",l="engine.name",e="repeat",k="_applyOrientation",h="url(",c="qx.ui.splitpane.Blocker",b=")",g="col-resize",f="row-resize",i="div",a="vertical",j="qx/static/blank.gif",d="absolute";
qx.Class.define(c,{extend:qx.html.Element,construct:function(v){var w={position:d,zIndex:11};
if((qx.core.Environment.get(l)==m)){w.backgroundImage=h+qx.util.ResourceManager.getInstance().toUri(j)+b;
w.backgroundRepeat=e;
}qx.html.Element.call(this,i,w);
if(v){this.setOrientation(v);
}else{this.initOrientation();
}},properties:{orientation:{init:t,check:[t,a],apply:k}},members:{_applyOrientation:function(x,y){if(x==t){this.setStyle(r,p);
this.setStyle(n,g);
this.setStyle(s,null);
}else{this.setStyle(q,p);
this.setStyle(o,null);
this.setStyle(n,f);
}},setWidth:function(z,A){var B=A+2*z;
this.setStyle(q,B+u);
},setHeight:function(C,D){var E=D+2*C;
this.setStyle(r,E+u);
},setLeft:function(F,G){var H=G-F;
this.setStyle(o,H+u);
},setTop:function(I,J){var top=J-I;
this.setStyle(s,top+u);
}}});
})();
(function(){var c="slider",b="splitter",a="qx.ui.splitpane.VLayout";
qx.Class.define(a,{extend:qx.ui.layout.Abstract,members:{verifyLayoutProperty:null,renderLayout:function(d,e){var v=this._getLayoutChildren();
var length=v.length;
var r,u;
var g,f,p,h;

for(var i=0;i<length;i++){r=v[i];
u=r.getLayoutProperties().type;

if(u===b){f=r;
}else if(u===c){p=r;
}else if(!g){g=r;
}else{h=r;
}}
if(g&&h){var x=g.getLayoutProperties().flex;
var k=h.getLayoutProperties().flex;

if(x==null){x=1;
}
if(k==null){k=1;
}var w=g.getSizeHint();
var n=f.getSizeHint();
var o=h.getSizeHint();
var j=w.height;
var s=n.height;
var t=o.height;

if(x>0&&k>0){var l=x+k;
var m=e-s;
var j=Math.round((m/l)*x);
var t=m-j;
var q=qx.ui.layout.Util.arrangeIdeals(w.minHeight,j,w.maxHeight,o.minHeight,t,o.maxHeight);
j=q.begin;
t=q.end;
}else if(x>0){j=e-s-t;

if(j<w.minHeight){j=w.minHeight;
}
if(j>w.maxHeight){j=w.maxHeight;
}}else if(k>0){t=e-j-s;

if(t<o.minHeight){t=o.minHeight;
}
if(t>o.maxHeight){t=o.maxHeight;
}}g.renderLayout(0,0,d,j);
f.renderLayout(0,j,d,s);
h.renderLayout(0,j+s,d,t);
}else{f.renderLayout(0,0,0,0);
if(g){g.renderLayout(0,0,d,e);
}else if(h){h.renderLayout(0,0,d,e);
}}},_computeSizeHint:function(){var H=this._getLayoutChildren();
var length=H.length;
var A,z,G;
var B=0,D=0,C=0;
var E=0,F=0,y=0;

for(var i=0;i<length;i++){A=H[i];
G=A.getLayoutProperties();
if(G.type===c){continue;
}z=A.getSizeHint();
B+=z.minHeight;
D+=z.height;
C+=z.maxHeight;

if(z.minWidth>E){E=z.minWidth;
}
if(z.width>F){F=z.width;
}
if(z.maxWidth>y){y=z.maxWidth;
}}return {minHeight:B,height:D,maxHeight:C,minWidth:E,width:F,maxWidth:y};
}}});
})();
(function(){var c="slider",b="splitter",a="qx.ui.splitpane.HLayout";
qx.Class.define(a,{extend:qx.ui.layout.Abstract,members:{verifyLayoutProperty:null,renderLayout:function(d,e){var v=this._getLayoutChildren();
var length=v.length;
var s,u;
var g,f,p,h;

for(var i=0;i<length;i++){s=v[i];
u=s.getLayoutProperties().type;

if(u===b){f=s;
}else if(u===c){p=s;
}else if(!g){g=s;
}else{h=s;
}}
if(g&&h){var x=g.getLayoutProperties().flex;
var j=h.getLayoutProperties().flex;

if(x==null){x=1;
}
if(j==null){j=1;
}var w=g.getSizeHint();
var m=f.getSizeHint();
var o=h.getSizeHint();
var t=w.width;
var r=m.width;
var q=o.width;

if(x>0&&j>0){var k=x+j;
var l=d-r;
var t=Math.round((l/k)*x);
var q=l-t;
var n=qx.ui.layout.Util.arrangeIdeals(w.minWidth,t,w.maxWidth,o.minWidth,q,o.maxWidth);
t=n.begin;
q=n.end;
}else if(x>0){t=d-r-q;

if(t<w.minWidth){t=w.minWidth;
}
if(t>w.maxWidth){t=w.maxWidth;
}}else if(j>0){q=d-t-r;

if(q<o.minWidth){q=o.minWidth;
}
if(q>o.maxWidth){q=o.maxWidth;
}}g.renderLayout(0,0,t,e);
f.renderLayout(t,0,r,e);
h.renderLayout(t+r,0,q,e);
}else{f.renderLayout(0,0,0,0);
if(g){g.renderLayout(0,0,d,e);
}else if(h){h.renderLayout(0,0,d,e);
}}},_computeSizeHint:function(){var H=this._getLayoutChildren();
var length=H.length;
var A,z,G;
var E=0,F=0,y=0;
var B=0,D=0,C=0;

for(var i=0;i<length;i++){A=H[i];
G=A.getLayoutProperties();
if(G.type===c){continue;
}z=A.getSizeHint();
E+=z.minWidth;
F+=z.width;
y+=z.maxWidth;

if(z.minHeight>B){B=z.minHeight;
}
if(z.height>D){D=z.height;
}
if(z.maxHeight>C){C=z.maxHeight;
}}return {minWidth:E,width:F,maxWidth:y,minHeight:B,height:D,maxHeight:C};
}}});
})();
(function(){var cv="ToolTip",cu="",ct="_",cs="row",cr="column",cq="execute",cp="/watchee/marker/_28_28_20_1.5_70_",co=".png",cn="16/statusLine/toolTipIcon.png",cm="device",bw="0",bv="transparent",bu="-",bt="top",bs="12:34",br="InputState",bq="inputLedComposite",bp="table-scroller-header",bo="auto",bn="X-Y",cC="red",cD=" ",cA="blue",cB="meeeier",cy="Battery status is not known",cz="Meier",cw="16/view-sort.png",cx="black",cE="<b>%1</b> is online but has no GPS signal",cF="track.devicestable.DevicesTable",bU="caption",bT="Please check one alarm",bW="Edit alarm rules",bV="Color of segment",bY="48/statusLine/LorryGreen.png",bX="activated",cb=" / ",ca="Müller",bS="Make a phone call to %1 (%2) using your phone %3",bR="Click to configure my account attributes and add buddies",a="inactive",b="Device is charged by external power supply [%1 %2V]",c="16/actions/view-sort-descending.png",d="muuuel",f="soome",g="Test-",h="Input switch %1",j="12/led-gray.png",k="<span style='color:",m="One device found",cS="<b>%1</b> is offline",cR="You have <b>no</b> permission to track on the map",cQ="<b>%1</b> is in power saving mode (sleeping)",cP="Please reload the battery [%1 %2%]",cW="bold",cV="<b>%1</b> is online",cU="16/sort_red.png",cT="Remove Row",cY="16/sort_yellow.png",cX="Power available [%1 %2V]",L="<b>%1</b> is in power saving mode %2 (sleeping)",M="32/statusLine/telephone.png",J="Click to display centered auto-tracking data on the map or Right-Click to not center",K="16/sort_yellow_desc.png",P="#CCFFCC",Q="48/statusLine/Excavator.png",N=" no permission",O="showSleepModeInIcon",H="Mercedes",I="#",u="48/statusLine/TowTruckYellow.png",t="Device is charged by external power supply [%1 %2%]",w="__",v="Remove All",q="zooros",p="16/actions/view-sort-ascending.png",s="isIoVisible",r="Send Event",o="/watchee/marker",n="48/statusLine/CarGrey.png",V="kingKong",W="cellClick",X="Debug Window",Y="No alarm",R="16/sort_red_desc.png",S="On",T="sortIcon",U="Input switch %1 '%2' is %3 at %4",ba="16/sort_red_asc.png",bb="center",E="V originally]",D="Zorros",C="Click to show device position on the map or Right-Click to avoid zooming in / Pressing Ctrl key during click will force a query on device",B="%1 devices: Click: Sort by alias name / Shift-Click: Sort by login name",A="cellContextmenu",z="Someone",y="Configure your remote device (Shift-Click: Administrator mode)",x="Sortable column",G="Configure your remote device",F="daniel",bc="48/statusLine/HelicopterMedical.png",bd="avatarSortBy",be="right",bf="16/sort_yellow_asc.png",bh="main",bi="devicesTable.configure.tooltip",bj="Try Table",bk="</span>",bl="Tracking Icon",bm="Device IO State",bA="click",bz="The buddy avatar, configure permissions",by="Bering",bx="isAvatarVisible",bE="You have <b>no</b> permission to see online status",bD="ruleColIsTelephone",bC="My device avatar, configure attributes and add buddies",bB="You have <b>no</b> permission to see alarms",bG="32/statusLine/ioControl/0000.png",bF="Please reload the battery [%1 %2V]",bN="#AAAAAA",bO="Input switch %1 is %2 at %3",bL="Change track appearance and load old tracks",bM="green",bJ="color12x48.png",bK="bottom",bH="Click to stop auto-tracking on the map or Shift-Click to avoid centering",bI="yellow",bP="Click to configure the buddy account settings and change permissions granted to %1",bQ="table-statusbar",cf="48/statusLine/QuadBikeBlue.png",ce="#224477",ch="Please check %1 alarms",cg="apee",cj="Add Row",ci="Input switch",cl="cellDblclick",ck="beeeri",cd="tooltip",cc="'>",cL="devicesTable.alarm.tooltip",cM="Power available [%1 %2%]",cN="icon/16/apps/internet-feed-reader.png",cO="Off",cH="grey",cI="FF0000",cJ="Click to stop auto-tracking on the map or Shift-Click to center",cK=" [",cG="48/statusLine/CabrioletRed.png";
qx.Class.define(cF,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(da){qx.core.Object.call(this);
this.trackGui=da;
this.qooxdooCanLookupCellWidget=true;
this.devicesTableController=new track.devicestable.DevicesTableController(this);
this.container=null;
},members:{create:function(){this.AVATAR_SORT_BY_ALIASNAME="aliasName";
this.AVATAR_SORT_BY_LOGINNAME="loginName";
this.AVATAR_SORT_BY_FIRSTNAME="firstName";
this.AVATAR_SORT_BY_LASTNAME="lastName";
this.container=this.createVirtualTableContainer();
return this.container;
},initDeviceTableLayoutConstants:function(){this.avatarSortBy=xbProperties.getStr(bd,this.AVATAR_SORT_BY_ALIASNAME);
this.ruleColIsTelephone=xbProperties.getBoolean(bD,false);
this.isAvatarVisible=xbProperties.getBoolean(bx,false);
this.isIoVisible=xbProperties.getBoolean(s,false);
this.showSleepModeInIcon=xbProperties.getBoolean(O,false);
var db=0;
this.COLUMN_AVATAR=this.isAvatarVisible?db++:-1;
this.COLUMN_COLOR=db++;
this.COLUMN_UPPER_LABEL=db;
var dc=db;
this.COLUMN_ONLINE_STATUS=db++;
this.COLUMN_HISTORY_TRACKS=db++;
this.COLUMN_DEVICE_CONFIG=db++;
this.COLUMN_BATTERY=db++;
this.COLUMN_ALARM=db++;

if(this.isIoVisible)this.COLUMN_IO=db++;

if(this.ruleColIsTelephone)this.COLUMN_RULES=db++;
this.COLUMN_DEVICE_AUTOTRACKING=db++;
this.COLUMN_SHOWING_ON_MAP=db++;
this.COLUMNCOUNT=db;
this.COLUMN_UPPER_LABEL_END=this.COLUMNCOUNT;
this.COLUMN_UPPER_INPUT_LED_SPAN=2;
this.COLUMN_UPPER_INPUT_LED=this.COLUMNCOUNT-this.COLUMN_UPPER_INPUT_LED_SPAN;

if(this.trackGui.showInputLeds()){this.COLUMN_UPPER_LABEL_END=this.COLUMN_UPPER_INPUT_LED;
}this.TABLEROWS_PER_BLOCK=2;
this.TOP_PADDING=4;
this.BOTTOM_PADDING=8;
this.COLOR_WIDTH=30;
this.AVATAR_WIDTH=48;
this.DOUBLEROW_HEIGHT=this.AVATAR_WIDTH+this.BOTTOM_PADDING;
this.HEADER_HEIGHT=18;
this.BOTTOM_ICON_HEIGHT=this.DOUBLEROW_HEIGHT-this.HEADER_HEIGHT;
this.BOTTOM_ICON_WIDTH=32;
this.width=this.COLOR_WIDTH+(this.COLUMNCOUNT-dc)*this.BOTTOM_ICON_WIDTH;

if(this.isAvatarVisible)this.width+=this.AVATAR_WIDTH;
this.height=22;
this.currentSortingColumn=this.COLUMN_AVATAR;
this.currentSortingAscending=true;
this.devicesArray=[];
},getWidth:function(){return this.width;
},initialize:function(dd){this.initDeviceTableLayoutConstants();
this.trackGui.controlFrameWidth=this.getWidth()+18;
this.trackGui.controlFrame.setMaxWidth(this.trackGui.controlFrameWidth);
this.trackGui.controlFrame.setMinWidth(this.trackGui.controlFrameWidth);
this.trackGui.paneToggle.setMarginLeft(this.trackGui.controlFrameWidth);
this.scroller=this.createVirtualTable(this.container);
this.__uX(true,true);
this.devicesTableController.initialize(dd);
},clear:function(){this.devicesTableController.clear();
this.container.removeAll();
},addBuddy:function(de){this.addDevice(de.getDevice(),true);
},removeBuddy:function(df){if(this.trackGui.watchee==null)return;
this.trackGui.getWindowManager().clearBuddyConfigWindow(df);
var dg=true;
var dh=df;
this.removeDeviceByDeviceId(dh,dg);
},removeAllBuddies:function(di){if(this.trackGui.watchee==null)return;
this.trackGui.getWindowManager().clearAllBuddyConfigWindow();
this.removeAllDevices();

if(!di){if(!this.trackGui.watchee.getAccountTO().isPublic()){var dj=this.trackGui.watchee.getAccountTO().getBuddyTO();
this.addBuddy(dj);
}}},__uU:function(dk){return Math.floor(dk/this.TABLEROWS_PER_BLOCK);
},__uV:function(){var dl=this.trackGui.watchee;
this.devicesArray=[new net.watchee.Device(dl,cz,cB,xbGetIcon(bY),true,bM,0),new net.watchee.Device(dl,by,ck,xbGetIcon(n),true,cH,1),new net.watchee.Device(dl,z,f,xbGetIcon(cG),false,cC,1),new net.watchee.Device(dl,D,q,xbGetIcon(bc),true,P,0),new net.watchee.Device(dl,ca,d,xbGetIcon(cf),true,ce,0),new net.watchee.Device(dl,V,cg,xbGetIcon(u),true,bN,0)];
},__uW:function(dm){var dn=this.trackGui.watchee;

if(dm===undefined)dm=this.devicesArray.length;
var dq=dm*this.TABLEROWS_PER_BLOCK;
dm=cu+dm;
var dp=6;

for(var i=0;i<dp;i++)if(dm.length<dp)dm=bw+dm;
var dq=cu+dq;

for(var i=0;i<dp;i++)if(dq.length<dp)dq=bw+dq;
return new net.watchee.Device(dn,g+dm+bu+dq,cB,xbGetIcon(Q),true,cx,0);
},removeAllDevices:function(){this.devicesArray=[];
this.__uX();
},addDevice:function(dr,ds){if(dr===undefined||dr==null)return;

if(this.trackGui.watchee==null)return;

if(!this.trackGui.watchee.getBuddyManager().showAccount(dr.getLoginName()))return;

if(ds===undefined)ds=true;
var dt=dr.getDeviceId();
this.removeDeviceByDeviceId(dt,false);
this.devicesArray.push(dr);

if(dr.isTrackingInitiallyOn()){var du=dr.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_GPS);

if(du){this.devicesTableController.startTracking(dr);
}}
if(ds){this.__uX(true);
}},removeDeviceByDeviceId:function(dv,dw){if(dv===undefined||dv==null)return null;

if(dw===undefined)dw=true;

for(var i=0,l=this.devicesArray.length;i<l;i++){if(dv==this.devicesArray[i].getDeviceId()){var dx=this.devicesArray[i];
this.devicesArray.splice(i,1);

if(dw){this.__uX(true);
}return dx;
}}return null;
},lookupDeviceByDeviceId:function(dy,dz){if(dy===undefined||dy==null)return null;

for(var i=0,l=this.devicesArray.length;i<l;i++){if(dy==this.devicesArray[i].getDeviceId()){return this.devicesArray[i];
}}return null;
},findAvatarAtom:function(dA){if(this.isAvatarVisible){var dB=this.lookupCellWidget(this.__va(dA),this.COLUMN_AVATAR);
return dB;
}return null;
},findOnlineStatusAtom:function(dC){var dD=this.lookupCellWidget(this.__vb(dC),this.COLUMN_ONLINE_STATUS);
return dD;
},__uX:function(dE,dF){if(dE===undefined)dE=true;

if(dF===undefined)dF=true;
var dH=this.scroller.getPane().getRowConfig().getItemCount();
var dG=this.devicesArray.length*this.TABLEROWS_PER_BLOCK;

if(dH!=dG)this.scroller.getPane().getRowConfig().setItemCount(dG);

if(dF)this.sortTable(this.currentSortingColumn,false);
this.__vd();
this.__ve();

if(dE){this.scroller.getPane().fullUpdate();
}},__uY:function(dI){if(dI===undefined||dI==null)return null;

for(var i=0,l=this.devicesArray.length;i<l;i++){if(dI==this.devicesArray[i].getDeviceId())return this.devicesArray[i];
}return null;
},__va:function(dJ){if(dJ===undefined||dJ==null)return -1;

for(var i=0,l=this.devicesArray.length;i<l;i++){if(dJ==this.devicesArray[i].getDeviceId())return i*this.TABLEROWS_PER_BLOCK;
}return -1;
},__vb:function(dK){var dL=this.__va(dK);

if(dL==-1)return -1;
return dL+1;
},createVirtualTableContainer:function(){var dN=new qx.ui.layout.Grid(5,0);
dN.setRowFlex(1,1);
dN.setColumnFlex(0,1);
dN.setColumnFlex(1,1);
var dM=new qx.ui.container.Composite(dN);
dM.setDecorator(bh);
return dM;
},sortTable:function(dO,dP){var dR=this;
this.currentSortingColumn=dO;
var dT=dO;
var dQ=false;
this.devicesArray.sort(function(dU,dV){var dW=null;
var dX=null;

if(dR.avatarSortBy==dR.AVATAR_SORT_BY_LOGINNAME){dW=dU.deviceId;
dX=dV.deviceId;
}else{dW=dU.getAlias();
dX=dV.getAlias();
}
if(dT==dR.COLUMN_ONLINE_STATUS){dW=cu+dU.getOnlineStatusOrderBy();
dX=cu+dV.getOnlineStatusOrderBy();
}else if(dT==dR.COLUMN_BATTERY){dW=cu+dU.getBatteryLevelForSortingStr();
dX=cu+dV.getBatteryLevelForSortingStr();
}else if(dT==dR.COLUMN_ALARM){dW=cu+dU.hasAlarms();
dX=cu+dV.hasAlarms();
}else if(dT==dR.COLUMN_HISTORY_TRACKS){dW=cu+dU.hasHistoryTracks();
dX=cu+dV.hasHistoryTracks();
}else if(dT==dR.COLUMN_DEVICE_CONFIG){}else if(dT==dR.COLUMN_RULES){dW=cu+dU.hasRules();
dX=cu+dV.hasRules();
}else if(dT==dR.COLUMN_DEVICE_AUTOTRACKING){dW=cu+dU.isAutoTracking();
dX=cu+dV.isAutoTracking();
}else if(dT==dR.COLUMN_SHOWING_ON_MAP){dW=cu+dU.isShowingOnMap();
dX=cu+dV.isShowingOnMap();
}
if(dQ==false){dW=dW.toLowerCase();
dX=dX.toLowerCase();
}var dY;

if(dR.currentSortingAscending)dY=(dW>dX)?1:((dW==dX)?0:-1);
else dY=(dW<dX)?1:((dW==dX)?0:-1);

if(dY==0&&dO!=dR.COLUMN_AVATAR){if(dR.avatarSortBy==dR.AVATAR_SORT_BY_LOGINNAME){dW=dU.getDeviceId().toLowerCase();
dX=dV.getDeviceId().toLowerCase();
dY=(dW>dX)?1:((dW==dX)?0:-1);
}else{dW=dU.getAlias().toLowerCase();
dX=dV.getAlias().toLowerCase();
dY=(dW>dX)?1:((dW==dX)?0:-1);
}}return dY;
});

if(dP){var dS=false;
this.__uX(dP,dS);
}},__vc:function(ea){var ec=this.COLOR_WIDTH;

if(this.isAvatarVisible)ec+=this.AVATAR_WIDTH;
var ef=new qx.ui.container.Composite(new qx.ui.layout.HBox());
this.headerAtomArr=[];
this.headerAtomArr[this.COLUMN_COLOR]=this.__vg(ef,this.COLUMN_COLOR,ec,cu);
this.__vd();

for(var ed=this.COLUMN_ONLINE_STATUS;ed<this.COLUMNCOUNT;ed++){var ee=cu;
this.headerAtomArr[ed]=this.__vg(ef,ed,this.BOTTOM_ICON_WIDTH,ee);
}var eb=xbProperties.getStr(T,bI);

if(eb==cA){this.iconUp=xbGetQxIcon(p);
this.iconDown=xbGetQxIcon(c);
this.iconInactive=xbGetIcon(cw);
}else if(eb==cC){this.iconUp=xbGetIcon(ba);
this.iconDown=xbGetIcon(R);
this.iconInactive=xbGetIcon(cU);
}else{this.iconUp=xbGetIcon(bf);
this.iconDown=xbGetIcon(K);
this.iconInactive=xbGetIcon(cY);
}this.__ve();
ea.add(ef,{row:0,column:0});
return ef;
},__vd:function(){var eh=this.devicesArray.length;
var eg=new qx.ui.tooltip.ToolTip(this.trn(m,B,eh,this.devicesArray.length));
this.headerAtomArr[this.COLUMN_COLOR].setToolTip(eg);
this.headerAtomArr[this.COLUMN_COLOR].setLabel(cu+this.devicesArray.length);
},__ve:function(){for(var ei=this.COLUMN_ONLINE_STATUS;ei<this.COLUMNCOUNT;ei++){if(!this.__vf(ei)){continue;
}var ej=this.iconInactive;

if(ei==this.currentSortingColumn){ej=this.currentSortingAscending?this.iconUp:this.iconDown;
}this.headerAtomArr[ei].setIcon(ej);
}},__vf:function(ek){return (ek!=this.COLUMN_HISTORY_TRACKS&&ek!=this.COLUMN_DEVICE_CONFIG&&ek!=this.COLUMN_SHOWING_ON_MAP);
},__vg:function(el,em,en,eo){var er=new qx.ui.basic.Atom().set({font:cW,decorator:bp,padding:0,width:en,height:22,iconPosition:bK,center:true,allowGrowX:true});

if(eo!=cu)er.setLabel(eo);

if(this.__vf(em)){var es=er.addListener(bA,function(e){this.currentSortingAscending=!this.currentSortingAscending;
if(e.isShiftPressed()){this.avatarSortBy=this.AVATAR_SORT_BY_LOGINNAME;
}else{this.avatarSortBy=this.AVATAR_SORT_BY_ALIASNAME;
}this.info("sorting now data for "+em+" asc="+this.currentSortingAscending);
this.sortTable(em,true);
},this);
var ep=this.trc(cv,x);
var eq=new qx.ui.tooltip.ToolTip(ep,xbGetIcon(cn));
eq.setRich(true);
eq.setShowTimeout(50);
er.setToolTip(eq);
}el.add(er);
return er;
},createVirtualTable:function(et){this.__vc(et);
this.getWidgetCellSpanScroller();
this.scroller.set({scrollbarX:bo,scrollbarY:bo});
et.add(this.scroller,{row:1,column:0});
return this.scroller;
},getCellProperties:function(eu,ev){return this.__cellRenderer.getCellProperties(eu+cb+ev);
},getWidgetCellSpanScroller:function(){var ew=this.devicesArray.length*this.TABLEROWS_PER_BLOCK;
this.scroller=new qx.ui.virtual.core.Scroller(ew,this.COLUMNCOUNT,this.BOTTOM_ICON_HEIGHT,this.BOTTOM_ICON_WIDTH);
var eA=this.scroller.getPane();
eA.addListener(W,this._onCellClick,this);
eA.addListener(A,this._onContextMenu,this);
eA.addListener(cl,this._onDblclickPane,this);
var ey=eA.getRowConfig();
var ez=eA.getColumnConfig();
ez.setItemSize(this.COLUMN_COLOR,this.COLOR_WIDTH);
if(this.isAvatarVisible){ez.setItemSize(this.COLUMN_AVATAR,this.AVATAR_WIDTH);
}this.widgetCellSpan=new qx.ui.virtual.layer.WidgetCellSpan(this,ey,ez);
this.scroller.getPane().addLayer(this.widgetCellSpan);
this._pool=[];
return this.scroller;
},__vh:function(eB){var eC=((eB%this.TABLEROWS_PER_BLOCK)==0);

if(eC){this.scroller.getPane().getRowConfig().setItemSize(eB,this.HEADER_HEIGHT);
if(this.isAvatarVisible){this.widgetCellSpan.setCellSpan(eB,this.COLUMN_AVATAR,this.TABLEROWS_PER_BLOCK,1);
}if(this.trackGui.showInputLeds()){this.widgetCellSpan.setCellSpan(eB,this.COLUMN_UPPER_LABEL,1,this.COLUMNCOUNT-this.COLUMN_UPPER_LABEL-this.COLUMN_UPPER_INPUT_LED_SPAN);
this.widgetCellSpan.setCellSpan(eB,this.COLUMN_UPPER_INPUT_LED,1,2);
}else{this.widgetCellSpan.setCellSpan(eB,this.COLUMN_UPPER_LABEL,1,this.COLUMNCOUNT-this.COLUMN_UPPER_LABEL);
}}},__vi:function(eD,eE){var eG=this.__uU(eD);

if(eG>=this.devicesArray.length){this.error("TableView.__lookupDevice TODO: Reload device row="+eD+" from database: We return the first as dummy");
this.devicesArray.push(this.__uW(eD));
}var eF=this.devicesArray[eG];
return eF;
},__vj:function(eH,eI){if(eI>=this.COLUMN_UPPER_INPUT_LED){if(!this.trackGui.showInputLeds()){return false;
}var eJ=((eH%this.TABLEROWS_PER_BLOCK)==0);
return eJ;
}return false;
},__vk:function(eK,eL,eM,eN){var eM=(eM===undefined)?true:eM;
var eO=(eM?S:cO);
var eP=((eK%this.TABLEROWS_PER_BLOCK)==0);
var eR=this.__vi(eK,eL);
var eN=eN||1;

if(eL==this.COLUMN_COLOR){if(eP)return null;
var eQ=eR.getTrackSegmentMarker();
return eQ;
}else if(eL==this.COLUMN_AVATAR&&eP){if(this.isAvatarVisible)return eR.getAvatarIconUrl();
}else if(eL==this.COLUMN_AVATAR&&!eP){return null;
}else if(eL>=this.COLUMN_UPPER_LABEL&&eL<this.COLUMN_UPPER_LABEL_END&&eP){return null;
}else if(this.__vj(eK,eL)){return eR.getInputLedIcon(eN);
}else if(eL==this.COLUMN_ONLINE_STATUS){return eR.getOnlineStatusIcon();
}else if(eL==this.COLUMN_BATTERY){return eR.getBatteryIcon();
}else if(eL==this.COLUMN_ALARM){return eR.getAlarmIcon();
}else if(eL==this.COLUMN_HISTORY_TRACKS){return eR.getHistoryTracksIcon();
}else if(eL==this.COLUMN_DEVICE_CONFIG){return eR.getDeviceConfigIcon();
}else if(eL==this.COLUMN_RULES){if(this.ruleColIsTelephone){return xbGetIcon(M);
}else{return eR.getRulesIcon();
}}else if(eL==this.COLUMN_IO){return xbGetIcon(bG);
}else if(eL==this.COLUMN_DEVICE_AUTOTRACKING){return eR.getAutoTrackingIcon();
}else if(eL==this.COLUMN_SHOWING_ON_MAP){return eR.getShowingOnMapIcon();
}this.error("Unexpected Icon wanted row="+eK+" column="+eL);
return xbGetIcon(bJ);
},__vl:function(eS,eT,eU){var eW=((eS%this.TABLEROWS_PER_BLOCK)==0);

if(eT==this.COLUMN_UPPER_LABEL&&eW){var eV=this.__vi(eS,eT);
return eV.getNiceName();
}return null;
},__vm:function(eX,eY,fa){var fc=((eX%this.TABLEROWS_PER_BLOCK)==0);

if(eY==this.COLUMN_COLOR&&fc){var fb=this.__vi(eX,eY);
return fb.getTrackSegmentColor();
}return null;
},__vn:function(fd,fe,ff){var fl=ff.getToolTip();

if(fl==null)return;
var fu=this.__vi(fd,fe);
var fj=((fd%this.TABLEROWS_PER_BLOCK)==0);

if(fe==this.COLUMN_COLOR){if(fj)fl.setLabel(this.trc(cv,bV));
else fl.setLabel(this.trc(cv,bl));
}else if(fe==this.COLUMN_AVATAR){if(fu.isCurrentLoginAccount())fl.setLabel(this.trc(cv,bC));
else fl.setLabel(this.trc(cv,bz));
}else if(fe>=this.COLUMN_UPPER_LABEL&&fe<this.COLUMN_UPPER_LABEL_END&&fj){if(fu.isCurrentLoginAccount())fl.setLabel(this.trc(cv,bR));
else fl.setLabel(this.trc(cv,bP,fu.getLoginName()));
}else if(fe>=this.COLUMN_UPPER_INPUT_LED&&fj){for(var i=0;i<fu.getCountInputStatus();i++){var fi=i+1;
var fs=net.watchee.GPSData.KEY_IN_PREFIX+fi;
var ft=ff.getUserData(fs);
var fm=ft.getToolTip();
var fn=fu.getInputStatus(fi)==true;
var fr=fu.getIOAliasName(fs,fn);
var fp=fn?this.trc(br,bX):this.trc(br,a);

if(fu.isInputAnalog(fi,this.trackGui)){fr=fu.getIOAnalogText(fi);
var fo=fu.getIOAnalogComputedResultRounded(fi);
fp=fo+fu.getIOAnalogUnit(fi)+cK+fu.getInputVoltage(fi)+this.trc(cd,E);
}var fq=fu.getCurrentGpsData();
var fk=bu;

if(fq!=null){fk=fq.getLocalTime();
}
if(fr!=null){fm.setLabel(this.trc(cv,U,fi,fr,fp,fk));
}else{fm.setLabel(this.trc(cv,bO,fi,fp,fk));
}}}else if(fe==this.COLUMN_ONLINE_STATUS){var fw=fu.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_DEVICE_STATUS);

if(fw){if(fu.getDeviceInfo().isDeviceSleepMode()&&fu.isDeviceCurrentlySleepingOrOffline()){if(this.showSleepModeInIcon){var fh=fu.getConfiguredPowerSaveMode();
fl.setLabel(this.trc(cv,L,fu.getDeviceId(),fh));
}else{fl.setLabel(this.trc(cv,cQ,fu.getDeviceId()));
}}else if(!fu.isGpsSignalOk())fl.setLabel(this.trc(cv,cE,fu.getDeviceId()));
else if(fu.isOnline())fl.setLabel(this.trc(cv,cV,fu.getDeviceId()));
else fl.setLabel(this.trc(cv,cS,fu.getDeviceId()));
}else{fl.setLabel(this.trc(cv,bE));
}}else if(fe==this.COLUMN_BATTERY){if(fu.hasVolt()){if(fu.isCharged())fl.setLabel(this.trc(cv,b,fu.getVoltTimeStr(),fu.getVolt()));
else if(fu.isBatteryUnknown())fl.setLabel(this.trc(cv,cy));
else if(fu.isBatteryEmpty())fl.setLabel(this.trc(cv,bF,fu.getVoltTimeStr(),fu.getVolt()));
else fl.setLabel(this.trc(cv,cX,fu.getVoltTimeStr(),fu.getVolt()));
}else{if(fu.isCharged())fl.setLabel(this.trc(cv,t,fu.getVoltTimeStr(),fu.getBatteryPercent()));
else if(fu.isBatteryUnknown())fl.setLabel(this.trc(cv,cy));
else if(fu.isBatteryEmpty())fl.setLabel(this.trc(cv,cP,fu.getVoltTimeStr(),fu.getBatteryPercent()));
else fl.setLabel(this.trc(cv,cM,fu.getVoltTimeStr(),fu.getBatteryPercent()));
}}else if(fe==this.COLUMN_ALARM){var fv=xbProperties.getStr(cL,null);
var fw=fu.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_ALARM)||fu.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_CFG);

if(fw){if(fu.hasAlarmsAttachedToRules())if(fv!=null)fl.setLabel(fv+cD+fu.getCountAlarmsAttachedToRules());
else fl.setLabel(this.trn(bT,ch,fu.getCountAlarmsAttachedToRules(),fu.getCountAlarmsAttachedToRules()));
else if(fv!=null)fl.setLabel(fv);
else fl.setLabel(this.trc(cv,Y));
}else{if(fv!=null)fl.setLabel(fv+N);
else fl.setLabel(this.trc(cv,bB));
}}else if(fe==this.COLUMN_HISTORY_TRACKS){fl.setLabel(this.trc(cv,bL));
}else if(fe==this.COLUMN_IO){fl.setLabel(this.trc(cv,bm));
}else if(fe==this.COLUMN_DEVICE_CONFIG){var fv=xbProperties.getStr(bi,null);

if(fv!=null)fl.setLabel(fv);
else if(this.trackGui.allowTestDevice)fl.setLabel(this.trc(cv,y));
else fl.setLabel(this.trc(cv,G));
}else if(fe==this.COLUMN_RULES){if(this.ruleColIsTelephone){fl.setLabel(this.trc(cv,bS,fu.getDeviceId(),fu.getHwPhoneNumber(),this.trackGui.getMyLoginName()));
}else{fl.setLabel(this.trc(cv,bW));
}}else if(fe==this.COLUMN_DEVICE_AUTOTRACKING){var fw=fu.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_GPS);

if(fw){if(fu.isAutoTracking()){if(fu.isAutoTrackingCentered()){fl.setLabel(this.trc(cv,bH));
}else{fl.setLabel(this.trc(cv,cJ));
}}else{fl.setLabel(this.trc(cv,J));
}}else{fl.setLabel(this.trc(bU,cR));
}}else if(fe==this.COLUMN_SHOWING_ON_MAP){fl.setLabel(this.trc(cv,C));
}else{fl.setLabel(cu);
}},lookupCellWidget:function(fy,fz){if(this.qooxdooCanLookupCellWidget){var fB=this.widgetCellSpan.getRenderedCellWidget(fy,fz);

if(fB!=null){return fB;
}return null;
}else{var fC=((fy%this.TABLEROWS_PER_BLOCK)==0);
var fA=this.__vi(fy,fz);

if(fA==null){this.info("lookupCellWidget(row="+fy+",column="+fz+") device is null");
return null;
}var fB=fA.tableAtomsCache[fC?0:1][fz];

if(fB==null){this.info("lookupCellWidget(row="+fy+",column="+fz+") widget is null, device OK");
return null;
}return fB;
}},updateDeviceStateAutoRefresh:function(fD,fE){var fE=org.xmlBlaster.util.toNumber(fE,this.COLUMN_AVATAR);
var fF=(this.currentSortingColumn==fE);
if(this.currentSortingColumn==this.COLUMN_AVATAR){fF=false;
}this.updateDeviceState(fD,fF,fE);
},updateDeviceState:function(fG,fH,fI){var fI=(fI===undefined)?-1:fI;
var fN=this.__va(fG);

if(fN==-1)return;

if(fI==-1){for(var fM=0;fM<this.COLUMNCOUNT;fM++){if(fM==this.COLUMN_AVATAR)continue;
var fK=this.lookupCellWidget(fN,fM);

if(fK!=null)this.updateCellWidgetState(fK,fN,fM);
}}else{var fK=this.lookupCellWidget(fN,fI);

if(fK!=null&&fI<=this.COLUMN_UPPER_LABEL){this.updateCellWidgetState(fK,fN,fI);
}
if(fK!=null&&this.trackGui.showInputLeds()&&fI>=this.COLUMN_UPPER_INPUT_LED){this.updateCellWidgetState(fK,fN,fI);
}}fN=this.__vb(fG);

if(fN==-1)return;

if(fI==-1){for(var fM=0;fM<this.COLUMNCOUNT;fM++){if(fM==this.COLUMN_AVATAR)continue;
var fK=this.lookupCellWidget(fN,fM);

if(fK!=null)this.updateCellWidgetState(fK,fN,fM);
}}else if(fI!=this.COLUMN_AVATAR){var fK=this.lookupCellWidget(fN,fI);

if(fK!=null)this.updateCellWidgetState(fK,fN,fI);
}
if(fH===undefined)fH=true;

if(fH){var fL=true;
var fJ=true;
this.__uX(fL,fJ);
}},_colorAtomLabel:function(fO,fP,fQ){fO.setRich(true);
fO.setLabel(k+fQ+cc+fP+bk);
},updateCellWidgetState:function(fR,fS,fT){if(fR==null)return;

if(!this.qooxdooCanLookupCellWidget){fS=org.xmlBlaster.util.toNumber(fS,fR.getUserData(cs));
fT=org.xmlBlaster.util.toNumber(fT,fR.getUserData(cr));
}
if(this.__vj(fS,fT)){var gb=4;

for(var i=0;i<gb;i++){var ga=i+1;
var gf=fR.getUserData(net.watchee.GPSData.KEY_IN_PREFIX+ga);
var gg=this.__vi(fS,fT);

if(gg.isInputAnalog(ga,this.trackGui)){gf.setIcon(null);
var gc=gg.getIOAnalogComputedResult(ga);

if(gc==null){gc=w;
}else{gc=Math.round(gc);

if(gc<10&&gc>=0)gc=bw+gc;
}this._colorAtomLabel(gf,gc,cA);
}else{var fW=this.__vk(fS,fT,false,ga);
gf.setIcon(fW);
gf.setLabel(null);
}}this.__vn(fS,fT,fR);
return;
}var ge=this.__vm(fS,fT,true);

if(ge!=null){fR.setBackgroundColor(ge);
}var fW=this.__vk(fS,fT,true);

if(fW!=null){if(fW.indexOf(o)>-1){var gg=this.__vi(fS,fT);
var fU=gg.getTrackSegmentColor();
var fU=(fU!=null)?fU:cI;

if(fU.indexOf(I)==0)fU=fU.substring(1);
var fY=fU;
if(fW.indexOf(bs)!=-1){fR.setIcon(cp+fY+ct+fU+ct+bs+co);
}else if(fW.indexOf(H)!=-1){var gi=encodeURIComponent(gg.getBuddyTO().getAlias());
var gd=cp+fY+ct+fU+ct+gi+co;
fR.setIcon(gd);
}else if(fW.indexOf(bn)!=-1){fR.setIcon(cp+fY+ct+fU+ct+bn+co);
}else{var gh=encodeURIComponent(gg.getLoginName());
fR.setIcon(cp+fY+ct+fU+ct+gh+co);
}}else{try{fR.setIcon(fW);
}catch(gj){var fX=this.__vj(fS,fT);
var i=gj;
}}}else{fR.resetIcon();
}var fV=this.__vl(fS,fT,true);

if(fV!=null)fR.setLabel(cD+fV);
else fR.resetLabel();
fR.setIconPosition(be);
this.__vn(fS,fT,fR);
},getCellWidget:function(gk,gl){var gn=null;

if(this.__vj(gk,gl)){gn=this.createNewCellWidget(gk,gl);
}else{gn=this._pool.pop()||this.createNewCellWidget(gk,gl);
}var go=((gk%this.TABLEROWS_PER_BLOCK)==0);

if(gl==this.COLUMN_AVATAR){gn.setIconPosition(bt);
}gn.setPaddingTop(go?this.TOP_PADDING:0);
gn.setPaddingBottom(go?0:this.BOTTOM_PADDING);

if(go){gn.setDecorator(bQ);
}else{if(gl>this.COLUMN_AVATAR)gn.setDecorator(bp);
}if(!this.qooxdooCanLookupCellWidget){gn.setUserData(cs,gk);
gn.setUserData(cr,gl);
var gm=this.__vi(gk,gl);
gn.setUserData(cm,gm);
gm.tableAtomsCache[go?0:1][gl]=gn;
}this.__vh(gk);
this.updateCellWidgetState(gn,gk,gl);
return gn;
},__vo:function(gp,gq,gr){var gs=xbGetIcon(j);

if(gr!=null)gs=gr.getInputLedIcon(gq);
var gu=new qx.ui.basic.Atom(null,gs);
var gt=new qx.ui.tooltip.ToolTip(this.trc(cv,h,gq),xbGetIcon(cn));
gt.setRich(true);
gt.setShowTimeout(50);
gt.setHideTimeout(10000);
gu.setToolTip(gt);
gp.add(gu);
gp.setUserData(net.watchee.GPSData.KEY_IN_PREFIX+gq,gu);
},createNewCellWidget:function(gv,gw){if(this.__vj(gv,gw)){var gz=4;
var gA=bb;
var gB=null;
var gx=new qx.ui.container.Composite(new qx.ui.layout.HBox(gz,gA,gB));
gx.setAlignY(bt);
gx.setUserData(bq,true);
var gy=new qx.ui.tooltip.ToolTip(this.trc(cv,ci),xbGetIcon(cn));
gy.setRich(true);
gy.setShowTimeout(5000);
gx.setToolTip(gy);
var gC=this.__vi(gv,gw);
this.__vo(gx,1,gC);
this.__vo(gx,2,gC);
this.__vo(gx,3,gC);
this.__vo(gx,4,gC);
gx.setBackgroundColor(bv);
gx.setDecorator(null);
return gx;
}var gx=new qx.ui.basic.Atom(null).set({allowGrowX:true});
var gy=new qx.ui.tooltip.ToolTip(cu,xbGetIcon(cn));
gy.setRich(true);
gy.setShowTimeout(50);
gx.setToolTip(gy);
gx.setBackgroundColor(bv);
gx.setDecorator(null);
return gx;
},poolCellWidget:function(gD){if(gD.getUserData(bq)!=null){return ;
}if(!this.qooxdooCanLookupCellWidget){var gH=gD.getUserData(cs);
var gE=gD.getUserData(cr);
var gG=((gH%this.TABLEROWS_PER_BLOCK)==0);
var gF=gD.getUserData(cm);
gF.tableAtomsCache[gG?0:1][gE]=null;
gD.setUserData(cm,null);
gD.setUserData(cs,null);
gD.setUserData(cr,null);
}gD.setBackgroundColor(bv);
gD.setDecorator(null);
this._pool.push(gD);
},setCellWidgetIcon:function(gI,gJ,gK){if(this.__vj(gI,gJ)){return;
}var gL=((gI%this.TABLEROWS_PER_BLOCK)==0);
var gM=this.lookupCellWidget(gI,gJ);

if(gM==null)return null;
gM.setIcon(gK);
return gM;
},_onCellClick:function(e){var gV=e.getRow();
var gO=e.getColumn();
var gP=((gV%this.TABLEROWS_PER_BLOCK)==0);
var gT=e.getModifiers();
this.info("row="+e.getRow()+" column="+e.getColumn()+" event.type="+e.getType()+" button="+e.getButton()+" isLeftPressed="+e.isLeftPressed()+" isMiddlePressed="+e.isMiddlePressed()+" isRightPressed="+e.isRightPressed()+" modifier="+e.getModifiers()+" isShiftPressed="+e.isShiftPressed()+" isAltPressed="+e.isAltPressed()+" isCtrlPressed="+e.isCtrlPressed());
var gS=this.__vi(gV,gO);
var gN=this.lookupCellWidget(gV,gO);
if(gO==this.COLUMN_COLOR){this.trackGui.getWindowManager().popupTrackConfigWindow(gS.getBuddyTO());
}else if(gP&&this.__vj(gV,gO)){this.trackGui.getWindowManager().popupDeviceConfigWindow(gS.getBuddyTO());
}else if(gP&&gO>this.COLUMN_COLOR||gO==this.COLUMN_AVATAR){this.trackGui.getWindowManager().popupBuddyConfigWindow(gS.getBuddyTO());
}else if(gO==this.COLUMN_ONLINE_STATUS){this.error("colcount: "+this.COLUMNCOUNT.toString());
this.error("devicestablewidth: "+this.width.toString());
}else if(gO==this.COLUMN_BATTERY){}else if(gO==this.COLUMN_ALARM){this.trackGui.getWindowManager().popupAlarmWindow(gS.getBuddyTO());
}else if(gO==this.COLUMN_HISTORY_TRACKS){this.trackGui.getWindowManager().popupTrackConfigWindow(gS.getBuddyTO());
}else if(gO==this.COLUMN_DEVICE_CONFIG){if(e.isShiftPressed()){if(this.trackGui.allowTestDevice==true){this.trackGui.getWindowManager().popupTestDeviceWindow(gS.getDeviceId());
}}else{this.trackGui.getWindowManager().popupDeviceConfigWindow(gS.getBuddyTO());
}}else if(gO==this.COLUMN_RULES){if(this.ruleColIsTelephone){this.trackGui.makePhoneCallToDevice(gS);
}else{this.trackGui.getWindowManager().popupRulesWindow(gS);
}}else if(gO==this.COLUMN_DEVICE_AUTOTRACKING){if(gS.isAutoTracking()&&e.isShiftPressed()){gS.setAutoTrackingCentered(!gS.isAutoTrackingCentered());
this.updateDeviceStateAutoRefresh(gS.getDeviceId(),this.COLUMN_DEVICE_AUTOTRACKING);
}else if(gS.isAutoTracking()){this.devicesTableController.stopTracking(gS);
}else if(!gS.isAutoTracking()){if(e.isRightPressed()){gS.setAutoTrackingCentered(false);
}else{gS.setAutoTrackingCentered(true);
}this.devicesTableController.startTracking(gS);
}}else if(gO==this.COLUMN_SHOWING_ON_MAP){if(!gN.isEnabled())return;
gN.setEnabled(false);
qx.event.Timer.once(function(){gN.setEnabled(true);
},this,2000);
var gU=(e.isShiftPressed()||e.isRightPressed())?false:true;
var gR=e.isCtrlPressed();
var gQ=e.isAltPressed();
this.devicesTableController.toggleShowingOnMap(gS,gU,gR,gQ);
}},_onContextMenu:function(e){var hb=e.getRow();
var gW=e.getColumn();
var gY=((hb%this.TABLEROWS_PER_BLOCK)==0);
this.info("row="+e.getRow()+" column="+e.getColumn()+"<-_onContextMenu isChrome="+org.xmlBlaster.util.isChrome);

if(org.xmlBlaster.util.isChrome){var gX=this.__vi(hb,gW);

if(gW==this.COLUMN_DEVICE_AUTOTRACKING){if(!gX.isAutoTracking()){gX.setAutoTrackingCentered(false);
this.devicesTableController.startTracking(gX);
}}else if(gW==this.COLUMN_SHOWING_ON_MAP){var ha=false;
this.devicesTableController.toggleShowingOnMap(gX,ha);
}}},_onDblclickPane:function(e){var hg=e.getRow();
var hc=e.getColumn();
var he=((hg%this.TABLEROWS_PER_BLOCK)==0);
this.info("event.name="+e.name+"row="+e.getRow()+" column="+e.getColumn()+"<-_onDblclickPane");
var hd=this.__vi(hg,hc);
var hf=this.lookupCellWidget(hg,hc);
if(hc==this.COLUMN_AVATAR){}else if(hc==this.COLUMN_ONLINE_STATUS){}else if(hc==this.COLUMN_BATTERY){}else if(hc==this.COLUMN_ALARM){}else if(hc==this.COLUMN_HISTORY_TRACKS){}else if(hc==this.COLUMN_DEVICE_CONFIG){if(this.trackGui.allowTestDevice==true){this.trackGui.getWindowManager().popupTestDeviceWindow(hd.getDeviceId());
}}},createDebugWindow:function(){var hh=new qx.ui.window.Window(X,cN);
hh.setLayout(new qx.ui.layout.VBox(10));
hh.setStatus(bj);
hh.open();
this.trackGui.getMyRoot().add(hh,{left:420,top:160});
var hj=new qx.ui.form.Button(cj);
hj.addListener(cq,function(e){this.addDevice(this.__uW(),true);
},this);
hh.add(hj);
{var hl=new qx.ui.form.Button(cT);
hl.addListener(cq,function(e){if(this.devicesArray.length>0)this.removeDeviceByDeviceId(this.devicesArray[0].getDeviceId());
},this);
hh.add(hl);
};
{var hi=new qx.ui.form.Button(v);
hi.addListener(cq,function(e){this.removeAllDevices();
},this);
hh.add(hi);
};
var hk=new qx.ui.form.Button(r);
hk.addListener(cq,function(e){var hp=F;
var hm=this.__uY(hp);

if(hm!=null){hm.toggleOnline();
var ho=false;
var hn=this.lookupCellWidget(this.__vb(hp),this.COLUMN_ONLINE_STATUS);

if(hn!=null){hn.setIcon(hm.getOnlineStatusIcon());
this.__uX();
}}},this);
hh.add(hk);
}}});
})();
(function(){var v="changeMyAccount",u="updateBuddy",t="countAlarms",s="info box",r="remotePropertiesChanged",q="removeBuddy",p="alarmChanged",o="changeAccount",n="setFriendOf",m="updateFriendOf",e="removeFriendOf",l="trackDisplayInfoChanged",h="trackInfoChanged",c="showInfoWindow=true,sessionName=",b="all",g="You have no permission to see location of %1",f="forceDeviceQuerySms=",i="track.devicestable.DevicesTableController",a="INPUT",j="Location of %1 is not known<br />Try start tracking first",d=",";
qx.Class.define(i,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(w){qx.core.Object.call(this);
this.devicesTable=w;
this.trackGui=this.devicesTable.trackGui;
},members:{initialize:function(x){this.onlineStatusListenerFunc=null;

if(this.trackGui.watchee!=null){this.onlineStatusListenerFunc=this.trackGui.watchee.getBuddyManager().getEventManager().addListener(org.xmlBlaster.util.PropTO.VALUE_TASK_NAMED_ONLINESTATUS,function(y){var z=y.getData().buddyTO;
this.info("Got online status event "+z.isOnline()+" for "+z.getLoginName());
this.devicesTable.updateDeviceStateAutoRefresh(z.getDevice().getDeviceId(),this.devicesTable.COLUMN_AVATAR);
this.devicesTable.updateDeviceStateAutoRefresh(z.getDevice().getDeviceId(),this.devicesTable.COLUMN_ONLINE_STATUS);
},this);
this.updateFriendOfListenerFunc=this.trackGui.watchee.getBuddyManager().getEventManager().addListener(m,function(A){this.updateBuddyOrFriendOfArrived(A.getData().buddyTO);
},this);
this.setFriendOfListenerFunc=this.trackGui.watchee.getBuddyManager().getEventManager().addListener(n,function(B){var C=B.getData();
var E=C.getBuddyList();

for(var k=0,F=E.length;k<F;k++){var D=E[k];
this.updateBuddyOrFriendOfArrived(D);
}},this);
this.changeAccountListenerFunc=this.trackGui.watchee.getBuddyManager().getEventManager().addListener(o,function(G){this.changeAccountOrFriendOfArrived(G.getData().buddyTO);
},this);
this.changeMyAccountListenerFunc=this.trackGui.watchee.getBuddyManager().getEventManager().addListener(v,function(H){var J=H.getData().accountTO;
var I=this.devicesTable.lookupDeviceByDeviceId(J.getLoginName());

if(I==null){return;
}this.devicesTable.updateDeviceState(I.getDeviceId(),true,this.devicesTable.COLUMN_UPPER_LABEL);
},this);
this.updateBuddyListenerFunc=this.trackGui.watchee.getBuddyManager().getEventManager().addListener(u,function(K){var L=K.getData().updateType;
this.updateBuddyOrFriendOfArrived(K.getData().buddyTO);
if(L==b){var M=this.trackGui.getWindowManager().popupBuddyConfigWindow(K.getData().buddyTO);
M.checkTabPermissions();
}},this);
this.removeFriendOfListenerFunc=this.trackGui.watchee.getBuddyManager().getEventManager().addListener(e,function(N){var O=N.getData();
this.devicesTable.removeBuddy(O.getLoginName());
},this);
this.removeBuddyListenerFunc=this.trackGui.watchee.getBuddyManager().getEventManager().addListener(q,function(P){var Q=P.getData();
this.devicesTable.removeBuddy(Q.getLoginName());
},this);
this.remotePropertiesChangedListenerFunc=this.trackGui.watchee.getBuddyManager().getEventManager().addListener(r,function(R){var S=R.getData().device;
var T=R.getData().propertyCollection;
this.devicesTable.updateDeviceStateAutoRefresh(S.getDeviceId(),this.devicesTable.COLUMN_BATTERY);
if(this.trackGui.showInputLeds()){this.devicesTable.updateDeviceStateAutoRefresh(S.getDeviceId(),this.devicesTable.COLUMN_UPPER_INPUT_LED);
}},this);
this.alarmChangedListenerFunc=this.trackGui.watchee.getEventManager().addListener(p,function(U){var V=U.getData().device;
var W=U.getData().alarmTO;
this.devicesTable.updateDeviceStateAutoRefresh(V.getDeviceId(),this.devicesTable.COLUMN_ALARM);
if(W.isRuleTypeEnum(net.watchee.RuleTypeEnum.GPSSIGNAL_LOST)||W.isRuleTypeEnum(net.watchee.RuleTypeEnum.GPSSIGNAL_OK)){this.devicesTable.updateDeviceStateAutoRefresh(V.getDeviceId(),this.devicesTable.COLUMN_ONLINE_STATUS);
}
if(W.getRuleTypeId().indexOf(a)==0){this.devicesTable.updateDeviceStateAutoRefresh(V.getDeviceId(),this.devicesTable.COLUMN_UPPER_INPUT_LED);
}},this);
this.countAlarmsListenerFunc=this.trackGui.watchee.getEventManager().addListener(t,function(X){var ba=X.getData().loginName;
var Y=X.getData().countAlarms;
this.devicesTable.updateDeviceStateAutoRefresh(ba,this.devicesTable.COLUMN_ALARM);
},this);
this.trackInfoChangedListenerFunc=this.trackGui.watchee.getEventManager().addListener(l,function(bb){var bc=bb.getData().device;
this.devicesTable.updateDeviceStateAutoRefresh(bc.getDeviceId(),this.devicesTable.COLUMN_COLOR);
},this);
}},toggleShowingOnMap:function(be,bf,bg,bh){if(this.trackGui.watchee==null)return;
var bg=org.xmlBlaster.util.toBoolean(bg,false);
var bh=org.xmlBlaster.util.toBoolean(bh,false);
be.setShowingOnMap(true);
if(be.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_GPS)){this.showLastKnownPosition(be,bf,bg,bh);
}this.devicesTable.updateDeviceStateAutoRefresh(be.getDeviceId(),this.devicesTable.COLUMN_SHOWING_ON_MAP);
},showLastKnownPosition:function(bi,bj,bk,bl){this.startTracking(bi);
var bk=org.xmlBlaster.util.toBoolean(bk,false);
var bl=org.xmlBlaster.util.toBoolean(bl,false);

if(bi.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_GPS)){if(this.trackGui.watchee!=null){var bm=bi.getCurrentTrack();
var bp=bm.getLastValidGpsData();

if(bp!=null&&bi.isAutoTracking()){this.trackGui.watchee.getMapManager().showAndCenterLocation(bm,bp,bj);

if(!bk&&!bl){return;
}}else{var bt=this.trackGui.getSyncGps(bi.getLoginName());
var bu=bt.length>0?bt[0]:null;

if(bu!=null&&!bu.isException()){var bo=bu.getContentStr();
this.info("getSyncGps -> "+bo);

if(bo!=null&&bo.length>0){var bp=new net.watchee.GPSData(bo,this);
this.trackGui.watchee.getMapManager().showAndCenterLocation(bm,bp,bj);

if(!bk&&!bl){return;
}}}}}
if(bk||bl){var bs=f+bl;
var br=bs+d+c+this.trackGui.getMySessionName();
var bq=org.xmlBlaster.util.PropTO.VALUE_TASK_NAMED_GETCURRENTLOCATION;
var bn=false;
this.trackGui.sendActionToDeviceCSV(bi.getLoginName(),bs,bq,bn,br);
this.info(bq+" send to "+bi.getLoginName());
return;
}else{this.trackGui.infoMsgBox(this.trc(s,j,bi.getNiceName()),4000);
}}else{this.trackGui.infoMsgBox(this.trc(s,g,bi.getNiceName()),4000);
}},startTracking:function(bv){if(bv.isAutoTracking())return;

if(!bv.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_GPS))return;
bv.setAutoTracking(true);
this.trackGui.subscribeGps(bv.getBuddyTO());
this.devicesTable.updateDeviceStateAutoRefresh(bv.getDeviceId(),this.devicesTable.COLUMN_DEVICE_AUTOTRACKING);
},stopTracking:function(bw){if(!bw.isAutoTracking())return;
bw.setAutoTracking(false);
this.trackGui.unSubscribeGps(bw.getBuddyTO());
this.devicesTable.updateDeviceStateAutoRefresh(bw.getDeviceId(),this.devicesTable.COLUMN_DEVICE_AUTOTRACKING);
},changeAccountOrFriendOfArrived:function(bx){this.updateBuddyOrFriendOfArrived(bx);
},updateBuddyOrFriendOfArrived:function(by){var bz=this.devicesTable.lookupDeviceByDeviceId(by.getLoginName());

if(bz==null){this.devicesTable.addBuddy(by);
var bC=this.trackGui.getBuddyManager().isTrackingOnFor(by.getLoginName());

if(bC){var bA=by;
qx.event.Timer.once(function(){this.startTracking(bA.getDevice());
},this,0);
}}else{var bB=bz.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_GPS);

if(!bB&&bz.isAutoTracking()){this.trackGui.unSubscribeGps(by);
}this.devicesTable.updateDeviceState(bz.getDeviceId(),true);
}},clear:function(){this.devicesTable.removeAllBuddies(true);

if(this.onlineStatusListenerFunc!=null){if(this.trackGui.watchee!=null)this.trackGui.watchee.getBuddyManager().getEventManager().removeListener(org.xmlBlaster.util.PropTO.VALUE_TASK_NAMED_ONLINESTATUS,this.onlineStatusListenerFunc);
this.onlineStatusListenerFunc=null;
}
if(this.updateFriendOfListenerFunc!=null){if(this.trackGui.watchee!=null)this.trackGui.watchee.getBuddyManager().getEventManager().removeListener(m,this.updateFriendOfListenerFunc);
this.updateFriendOfListenerFunc=null;
}
if(this.setFriendOfListenerFunc!=null){if(this.trackGui.watchee!=null)this.trackGui.watchee.getBuddyManager().getEventManager().removeListener(n,this.setFriendOfListenerFunc);
this.setFriendOfListenerFunc=null;
}
if(this.changeAccountListenerFunc!=null){if(this.trackGui.watchee!=null)this.trackGui.watchee.getBuddyManager().getEventManager().removeListener(o,this.changeAccountListenerFunc);
this.changeAccountListenerFunc=null;
}
if(this.changeMyAccountListenerFunc!=null){if(this.trackGui.watchee!=null)this.trackGui.watchee.getBuddyManager().getEventManager().removeListener(v,this.changeMyAccountListenerFunc);
this.changeMyAccountListenerFunc=null;
}
if(this.updateBuddyListenerFunc!=null){if(this.trackGui.watchee!=null)this.trackGui.watchee.getBuddyManager().getEventManager().removeListener(u,this.updateBuddyListenerFunc);
this.updateBuddyListenerFunc=null;
}
if(this.removeFriendOfListenerFunc!=null){if(this.trackGui.watchee!=null)this.trackGui.watchee.getBuddyManager().getEventManager().removeListener(e,this.removeFriendOfListenerFunc);
this.removeFriendOfListenerFunc=null;
}
if(this.removeBuddyListenerFunc!=null){if(this.trackGui.watchee!=null)this.trackGui.watchee.getBuddyManager().getEventManager().removeListener(q,this.removeFriendOfListenerFunc);
this.removeBuddyListenerFunc=null;
}
if(this.remotePropertiesChangedListenerFunc!=null){if(this.trackGui.watchee!=null)this.trackGui.watchee.getBuddyManager().getEventManager().removeListener(r,this.remotePropertiesChangedListenerFunc);
this.remotePropertiesChangedListenerFunc=null;
}
if(this.alarmChangedListenerFunc!=null){if(this.trackGui.watchee!=null)this.trackGui.watchee.getEventManager().removeListener(p,this.alarmChangedListenerFunc);
this.alarmChangedListenerFunc=null;
}
if(this.countAlarmsListenerFunc!=null){if(this.trackGui.watchee!=null)this.trackGui.watchee.getEventManager().removeListener(t,this.countAlarmsListenerFunc);
this.countAlarmsListenerFunc=null;
}
if(this.trackInfoChangedListenerFunc!=null){if(this.trackGui.watchee!=null)this.trackGui.watchee.getEventManager().removeListener(h,this.trackInfoChangedListenerFunc);
this.trackInfoChangedListenerFunc=null;
}this.trackGui.getWindowManager().clearAllBuddyConfigWindow();
this.trackGui.getWindowManager().clearAllDeviceConfigWindow();
}},destruct:function(){this.clear();
}});
})();
(function(){var g="scrollY",f="update",d="scrollX",c="pane",b="os.scrollBarOverlayed",a="qx.ui.virtual.core.Scroller";
qx.Class.define(a,{extend:qx.ui.core.scroll.AbstractScrollArea,construct:function(h,i,j,k){qx.ui.core.scroll.AbstractScrollArea.call(this);
this.__vp=new qx.ui.virtual.core.Pane(h,i,j,k);
this.__vp.addListener(f,this._computeScrollbars,this);
this.__vp.addListener(d,this._onScrollPaneX,this);
this.__vp.addListener(g,this._onScrollPaneY,this);

if(qx.core.Environment.get(b)){this._add(this.__vp,{edge:0});
}else{this._add(this.__vp,{row:0,column:0});
}},properties:{width:{refine:true,init:null},height:{refine:true,init:null}},members:{__vp:null,getPane:function(){return this.__vp;
},_createChildControlImpl:function(l,m){if(l==c){return this.__vp;
}else{return qx.ui.core.scroll.AbstractScrollArea.prototype._createChildControlImpl.call(this,l);
}},getItemTop:function(n){throw new Error("The method 'getItemTop' is not implemented!");
},getItemBottom:function(o){throw new Error("The method 'getItemBottom' is not implemented!");
},getItemLeft:function(p){throw new Error("The method 'getItemLeft' is not implemented!");
},getItemRight:function(q){throw new Error("The method 'getItemRight' is not implemented!");
},_onScrollBarX:function(e){this.__vp.setScrollX(e.getData());
},_onScrollBarY:function(e){this.__vp.setScrollY(e.getData());
}},destruct:function(){this.__vp.dispose();
this.__vp=null;
}});
})();
(function(){var v="appear",u="qx.ui.virtual.core.CellEvent",t="update",s="change",r="qx.event.type.Data",q="qx.ui.virtual.core.Pane",p="resize",o="click",n="scrollX",m="dblclick",d="contextmenu",l="cellClick",h="__vr",c="cellContextmenu",b="qx.event.type.Event",g="__vy",f="__vq",j="__vx",a="cellDblclick",k="scrollY";
qx.Class.define(q,{extend:qx.ui.core.Widget,construct:function(w,x,y,z){qx.ui.core.Widget.call(this);
this.__vq=new qx.ui.virtual.core.Axis(y,w);
this.__vr=new qx.ui.virtual.core.Axis(z,x);
this.__vs=0;
this.__vt=0;
this.__vu=0;
this.__vv=0;
this.__vw={};
this.__hL={};
this.__vx=new qx.ui.container.Composite();
this.__vx.setUserBounds(0,0,0,0);
this._add(this.__vx);
this.__vy=[];
this.__vq.addListener(s,this.fullUpdate,this);
this.__vr.addListener(s,this.fullUpdate,this);
this.addListener(p,this._onResize,this);
this.addListenerOnce(v,this._onAppear,this);
this.addListener(o,this._onClick,this);
this.addListener(m,this._onDblclick,this);
this.addListener(d,this._onContextmenu,this);
},events:{cellClick:u,cellContextmenu:u,cellDblclick:u,update:b,scrollX:r,scrollY:r},properties:{width:{refine:true,init:400},height:{refine:true,init:300}},members:{__vq:null,__vr:null,__vs:null,__vt:null,__vu:null,__vv:null,__vw:null,__hL:null,__vx:null,__vy:null,__vz:null,__rf:null,__vA:null,getRowConfig:function(){return this.__vq;
},getColumnConfig:function(){return this.__vr;
},getChildren:function(){return [this.__vx];
},addLayer:function(A){this.__vy.push(A);
A.setUserBounds(0,0,0,0);
this.__vx.add(A);
},getLayers:function(){return this.__vy;
},getVisibleLayers:function(){var B=[];

for(var i=0;i<this.__vy.length;i++){var C=this.__vy[i];

if(C.isVisible()){B.push(C);
}}return B;
},getScrollMaxX:function(){var D=this.getBounds();

if(D){return Math.max(0,this.__vr.getTotalSize()-D.width);
}return 0;
},getScrollMaxY:function(){var E=this.getBounds();

if(E){return Math.max(0,this.__vq.getTotalSize()-E.height);
}return 0;
},setScrollY:function(F){var G=this.getScrollMaxY();

if(F<0){F=0;
}else if(F>G){F=G;
}
if(this.__vs!==F){var H=this.__vs;
this.__vs=F;
this._deferredUpdateScrollPosition();
this.fireDataEvent(k,F,H);
}},getScrollY:function(){return this.__vs;
},setScrollX:function(I){var J=this.getScrollMaxX();

if(I<0){I=0;
}else if(I>J){I=J;
}
if(I!==this.__vt){var K=this.__vt;
this.__vt=I;
this._deferredUpdateScrollPosition();
this.fireDataEvent(n,I,K);
}},getScrollX:function(){return this.__vt;
},getScrollSize:function(){return {width:this.__vr.getTotalSize(),height:this.__vq.getTotalSize()};
},scrollRowIntoView:function(L){var O=this.getBounds();

if(!O){this.addListenerOnce(v,function(){qx.event.Timer.once(function(){this.scrollRowIntoView(L);
},this,0);
},this);
return;
}var P=this.__vq.getItemPosition(L);
var N=P+this.__vq.getItemSize(L);
var M=this.getScrollY();

if(P<M){this.setScrollY(P);
}else if(N>M+O.height){this.setScrollY(N-O.height);
}},scrollColumnIntoView:function(Q){var T=this.getBounds();

if(!T){this.addListenerOnce(v,function(){qx.event.Timer.once(function(){this.scrollColumnIntoView(Q);
},this,0);
},this);
return;
}var S=this.__vr.getItemPosition(Q);
var R=S+this.__vr.getItemSize(Q);
var U=this.getScrollX();

if(S<U){this.setScrollX(S);
}else if(R>U+T.width){this.setScrollX(R-T.width);
}},scrollCellIntoView:function(V,W){var X=this.getBounds();

if(!X){this.addListenerOnce(v,function(){qx.event.Timer.once(function(){this.scrollCellIntoView(V,W);
},this,0);
},this);
return;
}this.scrollColumnIntoView(V);
this.scrollRowIntoView(W);
},getCellAtPosition:function(Y,ba){var bb,bc;
var bd=this.getContentLocation();

if(!bd||ba<bd.top||ba>=bd.bottom||Y<bd.left||Y>=bd.right){return null;
}bb=this.__vq.getItemAtPosition(this.getScrollY()+ba-bd.top);
bc=this.__vr.getItemAtPosition(this.getScrollX()+Y-bd.left);

if(!bb||!bc){return null;
}return {row:bb.index,column:bc.index};
},prefetchX:function(be,bf,bg,bh){var bi=this.getVisibleLayers();

if(bi.length==0){return;
}var bk=this.getBounds();

if(!bk){return;
}var bl=this.__vt+bk.width;
var bm=this.__vv-bl;

if(this.__vt-this.__vw.left<Math.min(this.__vt,be)||this.__vw.right-bl<Math.min(bm,bg)){var bn=Math.min(this.__vt,bf);
var bj=Math.min(bm,bh);
this._setLayerWindow(bi,this.__vt-bn,this.__vs,bk.width+bn+bj,bk.height,false);
}},prefetchY:function(bo,bp,bq,br){var bs=this.getVisibleLayers();

if(bs.length==0){return;
}var bv=this.getBounds();

if(!bv){return;
}var bt=this.__vs+bv.height;
var bu=this.__vu-bt;

if(this.__vs-this.__vw.top<Math.min(this.__vs,bo)||this.__vw.bottom-bt<Math.min(bu,bq)){var bx=Math.min(this.__vs,bp);
var bw=Math.min(bu,br);
this._setLayerWindow(bs,this.__vt,this.__vs-bx,bv.width,bv.height+bx+bw,false);
}},_onResize:function(){if(this.getContainerElement().getDomElement()){this.__vz=true;
this._updateScrollPosition();
this.__vz=null;
this.fireEvent(t);
}},_onAppear:function(){this.fullUpdate();
},_onClick:function(e){this.__vB(e,l);
},_onContextmenu:function(e){this.__vB(e,c);
},_onDblclick:function(e){this.__vB(e,a);
},__vB:function(e,by){var bz=this.getCellAtPosition(e.getDocumentLeft(),e.getDocumentTop());

if(!bz){return;
}this.fireNonBubblingEvent(by,qx.ui.virtual.core.CellEvent,[this,e,bz.row,bz.column]);
},syncWidget:function(){if(this.__hL._fullUpdate){this._fullUpdate();
}else if(this.__hL._updateScrollPosition){this._updateScrollPosition();
}this.__hL={};
},_setLayerWindow:function(bA,bB,top,bC,bD,bE){var bJ=this.__vq.getItemAtPosition(top);

if(bJ){var bL=bJ.index;
var bP=this.__vq.getItemSizes(bL,bD+bJ.offset);
var bK=qx.lang.Array.sum(bP);
var bR=top-bJ.offset;
var bO=top-bJ.offset+bK;
}else{var bL=0;
var bP=[];
var bK=0;
var bR=0;
var bO=0;
}var bN=this.__vr.getItemAtPosition(bB);

if(bN){var bH=bN.index;
var bG=this.__vr.getItemSizes(bH,bC+bN.offset);
var bM=qx.lang.Array.sum(bG);
var bQ=bB-bN.offset;
var bI=bB-bN.offset+bM;
}else{var bH=0;
var bG=[];
var bM=0;
var bQ=0;
var bI=0;
}this.__vw={top:bR,bottom:bO,left:bQ,right:bI};
this.__vx.setUserBounds(this.__vw.left-this.__vt,this.__vw.top-this.__vs,bM,bK);
this.__rf=bG;
this.__vA=bP;

for(var i=0;i<this.__vy.length;i++){var bF=this.__vy[i];
bF.setUserBounds(0,0,bM,bK);

if(bE){bF.fullUpdate(bL,bH,bP,bG);
}else{bF.updateLayerWindow(bL,bH,bP,bG);
}}},__vC:function(){if(this.__vz){return;
}var bS=this.getScrollSize();

if(this.__vu!==bS.height||this.__vv!==bS.width){this.__vu=bS.height;
this.__vv=bS.width;
this.fireEvent(t);
}},fullUpdate:function(){this.__hL._fullUpdate=1;
qx.ui.core.queue.Widget.add(this);
},isUpdatePending:function(){return !!this.__hL._fullUpdate;
},_fullUpdate:function(){var bT=this.getVisibleLayers();

if(bT.length==0){this.__vC();
return;
}var bU=this.getBounds();

if(!bU){return ;
}this._setLayerWindow(bT,this.__vt,this.__vs,bU.width,bU.height,true);
this.__vC();
},_deferredUpdateScrollPosition:function(){this.__hL._updateScrollPosition=1;
qx.ui.core.queue.Widget.add(this);
},_updateScrollPosition:function(){var bV=this.getVisibleLayers();

if(bV.length==0){this.__vC();
return;
}var bX=this.getBounds();

if(!bX){return ;
}var bW={top:this.__vs,bottom:this.__vs+bX.height,left:this.__vt,right:this.__vt+bX.width};

if(this.__vw.top<=bW.top&&this.__vw.bottom>=bW.bottom&&this.__vw.left<=bW.left&&this.__vw.right>=bW.right){this.__vx.setUserBounds(this.__vw.left-bW.left,this.__vw.top-bW.top,this.__vw.right-this.__vw.left,this.__vw.bottom-this.__vw.top);
}else{this._setLayerWindow(bV,this.__vt,this.__vs,bX.width,bX.height,false);
}this.__vC();
}},destruct:function(){this._disposeArray(g);
this._disposeObjects(f,h,j);
this.__vw=this.__hL=this.__rf=this.__vA=null;
}});
})();
(function(){var e="change",d="qx.event.type.Event",c="qx.ui.virtual.core.Axis";
qx.Class.define(c,{extend:qx.core.Object,construct:function(f,g){qx.core.Object.call(this);
this.itemCount=g;
this.defaultItemSize=f;
this.customSizes={};
},events:{"change":d},members:{__vD:null,getDefaultItemSize:function(){return this.defaultItemSize;
},setDefaultItemSize:function(h){if(this.defaultItemSize!==h){this.defaultItemSize=h;
this.__vD=null;
this.fireNonBubblingEvent(e);
}},getItemCount:function(){return this.itemCount;
},setItemCount:function(j){if(this.itemCount!==j){this.itemCount=j;
this.__vD=null;
this.fireNonBubblingEvent(e);
}},setItemSize:function(k,l){if(this.customSizes[k]==l){return;
}
if(l===null){delete this.customSizes[k];
}else{this.customSizes[k]=l;
}this.__vD=null;
this.fireNonBubblingEvent(e);
},getItemSize:function(m){return this.customSizes[m]||this.defaultItemSize;
},resetItemSizes:function(){this.customSizes={};
this.__vD=null;
this.fireNonBubblingEvent(e);
},__vE:function(){if(this.__vD){return this.__vD;
}var p=this.defaultItemSize;
var w=this.itemCount;
var r=[];

for(var t in this.customSizes){var n=parseInt(t,10);

if(n<w){r.push(n);
}}
if(r.length==0){var s=[{startIndex:0,endIndex:w-1,firstItemSize:p,rangeStart:0,rangeEnd:w*p-1}];
this.__vD=s;
return s;
}r.sort(function(a,b){return a>b?1:-1;
});
var s=[];
var o=0;

for(var i=0;i<r.length;i++){var n=r[i];

if(n>=w){break;
}var v=this.customSizes[n];
var q=n*p+o;
o+=v-p;
s[i]={startIndex:n,firstItemSize:v,rangeStart:q};

if(i>0){s[i-1].rangeEnd=q-1;
s[i-1].endIndex=n-1;
}}if(s[0].rangeStart>0){s.unshift({startIndex:0,endIndex:s[0].startIndex-1,firstItemSize:p,rangeStart:0,rangeEnd:s[0].rangeStart-1});
}var x=s[s.length-1];
var u=(w-x.startIndex-1)*p;
x.rangeEnd=x.rangeStart+x.firstItemSize+u-1;
x.endIndex=w-1;
this.__vD=s;
return s;
},__vF:function(y){var z=this.__vD||this.__vE();
var A=0;
var C=z.length-1;
while(true){var D=A+((C-A)>>1);
var B=z[D];

if(B.rangeEnd<y){A=D+1;
}else if(B.rangeStart>y){C=D-1;
}else{return B;
}}},getItemAtPosition:function(E){if(E<0||E>=this.getTotalSize()){return null;
}var G=this.__vF(E);
var I=G.rangeStart;
var F=G.startIndex;
var J=G.firstItemSize;

if(I+J>E){return {index:F,offset:E-I};
}else{var H=this.defaultItemSize;
return {index:F+1+Math.floor((E-I-J)/H),offset:(E-I-J)%H};
}},__vG:function(K){var L=this.__vD||this.__vE();
var M=0;
var O=L.length-1;
while(true){var P=M+((O-M)>>1);
var N=L[P];

if(N.endIndex<K){M=P+1;
}else if(N.startIndex>K){O=P-1;
}else{return N;
}}},getItemPosition:function(Q){if(Q<0||Q>=this.itemCount){return null;
}var R=this.__vG(Q);

if(R.startIndex==Q){return R.rangeStart;
}else{return R.rangeStart+R.firstItemSize+(Q-R.startIndex-1)*this.defaultItemSize;
}},getTotalSize:function(){var S=this.__vD||this.__vE();
return S[S.length-1].rangeEnd+1;
},getItemSizes:function(T,U){var V=this.customSizes;
var Y=this.defaultItemSize;
var X=0;
var W=[];
var i=0;

while(X<U){var ba=V[T++]||Y;
X+=ba;
W[i++]=ba;

if(T>=this.itemCount){break;
}}return W;
}},destruct:function(){this.customSizes=this.__vD=null;
}});
})();
(function(){var b="Integer",a="qx.ui.virtual.core.CellEvent";
qx.Class.define(a,{extend:qx.event.type.Mouse,properties:{row:{check:b,nullable:true},column:{check:b,nullable:true}},members:{init:function(c,d,e,f){d.clone(this);
this.setBubbles(false);
this.setRow(e);
this.setColumn(f);
}}});
})();
(function(){var a="qx.ui.virtual.core.ILayer";
qx.Interface.define(a,{members:{fullUpdate:function(b,c,d,e){this.assertArgumentsCount(arguments,6,6);
this.assertPositiveInteger(b);
this.assertPositiveInteger(c);
this.assertArray(d);
this.assertArray(e);
},updateLayerWindow:function(f,g,h,i){this.assertArgumentsCount(arguments,6,6);
this.assertPositiveInteger(f);
this.assertPositiveInteger(g);
this.assertArray(h);
this.assertArray(i);
},updateLayerData:function(){}}});
})();
(function(){var b="qx.ui.virtual.layer.Abstract",a="abstract";
qx.Class.define(b,{extend:qx.ui.core.Widget,type:a,implement:[qx.ui.virtual.core.ILayer],construct:function(){qx.ui.core.Widget.call(this);
this.__hL={};
},properties:{anonymous:{refine:true,init:true}},members:{__hL:null,__bJ:null,__vH:null,__vI:null,__vA:null,__rf:null,getFirstRow:function(){return this.__vH;
},getFirstColumn:function(){return this.__vI;
},getRowSizes:function(){return this.__vA||[];
},getColumnSizes:function(){return this.__rf||[];
},syncWidget:function(){if(!this.getContentElement().getDomElement()){return;
}
if(this.__hL.fullUpdate||this.__hL.updateLayerWindow&&this.__hL.updateLayerData){this._fullUpdate.apply(this,this.__bJ);
}else if(this.__hL.updateLayerWindow){this._updateLayerWindow.apply(this,this.__bJ);
}else if(this.__hL.updateLayerData&&this.__vA){this._updateLayerData();
}
if(this.__hL.fullUpdate||this.__hL.updateLayerWindow){var c=this.__bJ;
this.__vH=c[0];
this.__vI=c[1];
this.__vA=c[2];
this.__rf=c[3];
}this.__hL={};
},_updateLayerData:function(){this._fullUpdate(this.__vH,this.__vI,this.__vA,this.__rf);
},_fullUpdate:function(d,e,f,g){throw new Error("Abstract method '_fullUpdate' called!");
},_updateLayerWindow:function(h,i,j,k){this._fullUpdate(h,i,j,k);
},updateLayerData:function(){this.__hL.updateLayerData=true;
qx.ui.core.queue.Widget.add(this);
},fullUpdate:function(l,m,n,o){this.__bJ=arguments;
this.__hL.fullUpdate=true;
qx.ui.core.queue.Widget.add(this);
},updateLayerWindow:function(p,q,r,s){this.__bJ=arguments;
this.__hL.updateLayerWindow=true;
qx.ui.core.queue.Widget.add(this);
}},destruct:function(){this.__hL=this.__bJ=this.__vA=this.__rf=null;
}});
})();
(function(){var j="cell.spanning",h="cell.rowspan",g="cell.column",f="cell.colspan",e="cell.row",d="x",c="qx.ui.virtual.layer.WidgetCellSpan",b="_spanManager",a="_cellLayer";
qx.Class.define(c,{extend:qx.ui.virtual.layer.Abstract,include:[qx.ui.core.MChildrenHandling],construct:function(k,m,n){qx.ui.virtual.layer.Abstract.call(this);
this.setZIndex(2);
this._spanManager=new qx.ui.virtual.layer.CellSpanManager(m,n);
this._cellProvider=k;
this.__vJ=[];
this._cellLayer=new qx.ui.virtual.layer.WidgetCell(this.__vK());
this._cellLayer.setZIndex(0);
this._setLayout(new qx.ui.layout.Grow());
this._add(this._cellLayer);
},properties:{anonymous:{refine:true,init:false}},members:{getRenderedCellWidget:function(o,p){var q=this._cellLayer.getRenderedCellWidget(o,p);

if(!q||q.getUserData(j)){var t=this._getChildren();

for(var i=0,l=t.length;i<l;i++){var s=t[i];

if(s==this._cellLayer){continue;
}var r={row:s.getUserData(e),column:s.getUserData(g),rowSpan:s.getUserData(h),colSpan:s.getUserData(f)};

if(r.row<=o&&o<r.row+r.rowSpan&&r.column<=p&&p<r.column+r.colSpan){return s;
}}return null;
}return q;
},__vJ:null,setCellSpan:function(u,v,w,x){var y=u+d+v;
this._spanManager.removeCell(y);

if(w>1||x>1){this._spanManager.addCell(y,u,v,w,x);
}qx.ui.core.queue.Widget.add(this);
},__vK:function(){var self=this;
var B=this._cellProvider;
var A=this.__vJ;
var z={getCellWidget:function(C,D){if(!self._spanMap[C][D]){var E=B.getCellWidget(C,D);
}else{var E=A.pop();

if(!E){E=new qx.ui.core.Spacer();
E.setUserData(j,1);
}}return E;
},poolCellWidget:function(F){if(F.getUserData(j)){A.push(F);
}else{B.poolCellWidget(F);
}}};
return z;
},__vL:function(G,H,I,J){this._cells=this._spanManager.findCellsInWindow(G,H,I,J);

if(this._cells.length>0){this._bounds=this._spanManager.getCellBounds(this._cells,G,H);
this._spanMap=this._spanManager.computeCellSpanMap(this._cells,G,H,I,J);
}else{this._bounds=[];
this._spanMap=[];

for(var i=0;i<I;i++){this._spanMap[G+i]=[];
}}},__vM:function(){var O=this.getChildren();

for(var i=O.length-1;i>=0;i--){var N=O[i];

if(N!==this._cellLayer){this._cellProvider.poolCellWidget(N);
this._remove(N);
}}
for(var i=0,l=this._cells.length;i<l;i++){var M=this._cells[i];
var K=this._bounds[i];
var L=this._cellProvider.getCellWidget(M.firstRow,M.firstColumn);

if(L){L.setUserBounds(K.left,K.top,K.width,K.height);
L.setUserData(e,M.firstRow);
L.setUserData(g,M.firstColumn);
L.setUserData(h,M.lastRow-M.firstRow+1);
L.setUserData(f,M.lastColumn-M.firstColumn+1);
this._add(L);
}}},_fullUpdate:function(P,Q,R,S){this.__vL(P,Q,R.length,S.length);
this.__vM();
this._cellLayer.fullUpdate(P,Q,R,S);
},_updateLayerWindow:function(T,U,V,W){this.__vL(T,U,V.length,W.length);
this.__vM();
this._cellLayer.updateLayerWindow(T,U,V,W);
}},destruct:function(){var X=this._getChildren();

for(var i=0;i<X.length;i++){X[i].dispose();
}this._disposeObjects(b,a);
this._cellProvider=this.__vJ=this._cells=this._bounds=this._spanMap=null;
}});
})();
(function(){var j="change",h="lastColumn",g="firstColumn",f="firstRow",d="qx.ui.virtual.layer.CellSpanManager",c="lastRow";
qx.Class.define(d,{extend:qx.core.Object,construct:function(k,m){qx.core.Object.call(this);
this._cells={};
this._invalidateSortCache();
this._invalidatePositionCache();
k.addListener(j,this._onRowConfigChange,this);
m.addListener(j,this._onColumnConfigChange,this);
this._rowConfig=k;
this._columnConfig=m;
},members:{addCell:function(n,o,p,q,r){this._cells[n]={firstRow:o,lastRow:o+q-1,firstColumn:p,lastColumn:p+r-1,id:n};
this._invalidateSortCache();
},removeCell:function(s){delete (this._cells[s]);
this._invalidateSortCache();
},_invalidateSortCache:function(){this._sorted={};
},_getSortedCells:function(t){if(this._sorted[t]){return this._sorted[t];
}var u=this._sorted[t]=qx.lang.Object.getValues(this._cells);
u.sort(function(a,b){return a[t]<b[t]?-1:1;
});
return u;
},_findCellsInRange:function(v,w,x){var z=this._getSortedCells(v);

if(z.length==0){return {};
}var B=0;
var y=z.length-1;
while(true){var D=B+((y-B)>>1);
var A=z[D];

if(A[v]>=w&&(D==0||z[D-1][v]<w)){break;
}
if(A[v]>=w){y=D-1;
}else{B=D+1;
}
if(B>y){return {};
}}var C={};
var A=z[D];

while(A&&A[v]>=w&&A[v]<=x){C[A.id]=A;
A=z[D++];
}return C;
},findCellsInWindow:function(E,F,G,H){var L={};

if(G>0){var J=E+G-1;
qx.lang.Object.merge(L,this._findCellsInRange(f,E,J),this._findCellsInRange(c,E,J));
}var I={};

if(H>0){var K=F+H-1;
qx.lang.Object.merge(I,this._findCellsInRange(g,F,K),this._findCellsInRange(h,F,K));
}return this.__vN(I,L);
},__vN:function(M,N){var O=[];

for(var P in M){if(N[P]){O.push(N[P]);
}}return O;
},_onRowConfigChange:function(e){this._rowPos=[];
},_onColumnConfigChange:function(e){this._columnPos=[];
},_invalidatePositionCache:function(){this._rowPos=[];
this._columnPos=[];
},_getRowPosition:function(Q){var R=this._rowPos[Q];

if(R!==undefined){return R;
}R=this._rowPos[Q]=this._rowConfig.getItemPosition(Q);
return R;
},_getColumnPosition:function(S){var T=this._columnPos[S];

if(T!==undefined){return T;
}T=this._columnPos[S]=this._columnConfig.getItemPosition(S);
return T;
},_getSingleCellBounds:function(U,V,W){var X={left:0,top:0,width:0,height:0};
X.height=this._getRowPosition(U.lastRow)+this._rowConfig.getItemSize(U.lastRow)-this._getRowPosition(U.firstRow);
X.top=this._getRowPosition(U.firstRow)-this._getRowPosition(V);
X.width=this._getColumnPosition(U.lastColumn)+this._columnConfig.getItemSize(U.lastColumn)-this._getColumnPosition(U.firstColumn);
X.left=this._getColumnPosition(U.firstColumn)-this._getColumnPosition(W);
return X;
},getCellBounds:function(Y,ba,bb){var bc=[];

for(var i=0,l=Y.length;i<l;i++){bc.push(this._getSingleCellBounds(Y[i],ba,bb));
}return bc;
},computeCellSpanMap:function(bd,be,bf,bg,bh){var bi=[];

if(bg<=0){return bi;
}var br=be+bg-1;

for(var i=be;i<=br;i++){bi[i]=[];
}
if(bh<=0){return bi;
}var bk=bf+bh-1;

for(var i=0,l=bd.length;i<l;i++){var bn=bd[i];
var bl=Math.max(be,bn.firstRow);
var bm=Math.min(br,bn.lastRow);
var bs;

for(var bo=bl;bo<=bm;bo++){bs=bi[bo];
var bj=Math.max(bf,bn.firstColumn);
var bq=Math.min(bk,bn.lastColumn);

for(var bp=bj;bp<=bq;bp++){bs[bp]=1;
}}}return bi;
}},destruct:function(){this._rowConfig.removeListener(j,this._onRowConfigChange,this);
this._columnConfig.removeListener(j,this._onColumnConfigChange,this);
this._cells=this._sorted=this._rowPos=this._columnPos=this._rowConfig=this._columnConfig=null;
}});
})();
(function(){var f="cell.empty",e="cell.column",d="updated",c="cell.row",b="qx.event.type.Event",a="qx.ui.virtual.layer.WidgetCell";
qx.Class.define(a,{extend:qx.ui.virtual.layer.Abstract,include:[qx.ui.core.MChildrenHandling],construct:function(g){qx.ui.virtual.layer.Abstract.call(this);
this.setZIndex(2);
this._cellProvider=g;
this.__vJ=[];
},properties:{anonymous:{refine:true,init:false}},events:{updated:b},members:{__vJ:null,getRenderedCellWidget:function(h,j){var k=this.getColumnSizes().length;
var p=this.getRowSizes().length;
var o=this.getFirstRow();
var n=this.getFirstColumn();

if(h<o||h>=o+p||j<n||j>=n+k){return null;
}var m=(j-n)+(h-o)*k;
var l=this._getChildren()[m];

if(l.getUserData(f)){return null;
}else{return l;
}},_getSpacer:function(){var q=this.__vJ.pop();

if(!q){q=new qx.ui.core.Spacer();
q.setUserData(f,1);
}return q;
},_activateNotEmptyChild:function(r){var s=qx.ui.core.FocusHandler.getInstance().getActiveWidget();
if(s==r||qx.ui.core.Widget.contains(r,s)){var t=this._getChildren();

for(var i=t.length-1;i>=0;i--){if(!t[i].getUserData(f)){t[i].activate();
break;
}}}},_fullUpdate:function(u,v,w,z){var B=this._cellProvider;
var F=this._getChildren();

for(var i=0;i<F.length;i++){var D=F[i];

if(D.getUserData(f)){this.__vJ.push(D);
}else{this._activateNotEmptyChild(D);
B.poolCellWidget(D);
}}this._removeAll();
var top=0;
var G=0;

for(var y=0;y<w.length;y++){for(var x=0;x<z.length;x++){var E=u+y;
var C=v+x;
var A=B.getCellWidget(E,C)||this._getSpacer();
A.setUserBounds(G,top,z[x],w[y]);
A.setUserData(c,E);
A.setUserData(e,C);
this._add(A);
G+=z[x];
}top+=w[y];
G=0;
}this.fireEvent(d);
},_updateLayerWindow:function(H,I,J,K){var W=H+J.length-1;
var N=I+K.length-1;
var S={firstRow:Math.max(H,this.getFirstRow()),lastRow:Math.min(W,this._lastRow),firstColumn:Math.max(I,this.getFirstColumn()),lastColumn:Math.min(N,this._lastColumn)};
this._lastColumn=N;
this._lastRow=W;

if(S.firstRow>S.lastRow||S.firstColumn>S.lastColumn){return this._fullUpdate(H,I,J,K);
}var X=this._getChildren();
var L=this.getColumnSizes().length;
var U=[];
var R={};

for(var Y=H;Y<=W;Y++){U[Y]=[];

for(var Q=I;Q<=N;Q++){if(Y>=S.firstRow&&Y<=S.lastRow&&Q>=S.firstColumn&&Q<=S.lastColumn){var x=Q-this.getFirstColumn();
var y=Y-this.getFirstRow();
var M=y*L+x;
U[Y][Q]=X[M];
R[M]=true;
}}}var T=this._cellProvider;
var X=this._getChildren();

for(var i=0;i<X.length;i++){if(!R[i]){var V=X[i];

if(V.getUserData(f)){this.__vJ.push(V);
}else{this._activateNotEmptyChild(V);
T.poolCellWidget(V);
}}}this._removeAll();
var top=0;
var O=0;

for(var y=0;y<J.length;y++){for(var x=0;x<K.length;x++){var Y=H+y;
var Q=I+x;
var P=U[Y][Q]||T.getCellWidget(Y,Q)||this._getSpacer();
P.setUserBounds(O,top,K[x],J[y]);
P.setUserData(c,Y);
P.setUserData(e,Q);
this._add(P);
O+=K[x];
}top+=J[y];
O=0;
}this.fireEvent(d);
}},destruct:function(){var ba=this._getChildren();

for(var i=0;i<ba.length;i++){ba[i].dispose();
}this._cellProvider=this.__vJ=null;
}});
})();
(function(){var m="caption",k="16/actions/help-about.png",j="buddyTO",h="isPressed",g="execute",f="button",d="Track now",c="updateBuddy",b="updateFriendOf",a="removeFriendOf",N="22/actions/dialog-ok.png",M="info box",L="100%",K="removeBuddy",J="avatarAtom",I="trackButton",H="<b>%1</b>: Access history tracks and configure track-colors and icons",G="22/buddies_add.png",F="track.BuddiesWidget",E=" - click me to see current location",t="22/categories/graphics.png",u="ToolTip",r="You have no permission to see location of %1",s="16/actions/edit-find.png",p="Your buddy <b>%1</b> is offline",q="16/pda_blue.png",n="You have <b>no</b> permission to see online status",o="Location of %1 is not known<br />Try start tracking first",v="22/actions/dialog-cancel.png",w="Start/Stop tracking <b>%1</b> on the map",z="deviceConfButton",y="click",B="You have <b>no</b> permission to track <b>%1</b> on the map",A="Configure device of <b>%1</b>, change tracking rate and more",D="Your buddy <b>%1</b> is online %2",C="Configure <b>%1</b> relation and permissions",x="Stop Tracking";
qx.Class.define(F,{extend:qx.ui.container.Composite,construct:function(O){qx.ui.container.Composite.call(this);
this.trackGui=O;
this.ME="BuddiesWidget.js";
this.log=this.trackGui.getLogger();
this.setLayout(new qx.ui.layout.Canvas());
this.buddiesFrame=new qx.ui.container.Composite(new qx.ui.layout.VBox());
this.add(this.buddiesFrame,{width:L,height:L});
this.log.info("mainSplitpane added");
},members:{updateBuddyOrFriendOfArrived:function(P){var Q=this.findBuddyWidget(P.getLoginName());

if(Q==null){this.addBuddy(P);
}else{var S=this.findAvatarAtom(P.getLoginName());
this.updateAvatarAtom(P,S);
var R=this.findTrackButton(P.getLoginName());
this.updateTrackButton(P,R);
}},initialize:function(T){this.onlineStatusListenerFunc=null;

if(this.trackGui.watchee!=null){this.onlineStatusListenerFunc=this.trackGui.watchee.getBuddyManager().getEventManager().addListener(org.xmlBlaster.util.PropTO.VALUE_TASK_NAMED_ONLINESTATUS,function(U){var V=U.getData().buddyTO;
var W=this.findAvatarAtom(V.getLoginName());
this.updateAvatarAtom(V,W);
},this);
this.updateFriendOfListenerFunc=this.trackGui.watchee.getBuddyManager().getEventManager().addListener(b,function(X){this.updateBuddyOrFriendOfArrived(X.getData().buddyTO);
},this);
this.updateBuddyListenerFunc=this.trackGui.watchee.getBuddyManager().getEventManager().addListener(c,function(Y){this.updateBuddyOrFriendOfArrived(Y.getData().buddyTO);
var ba=this.trackGui.getWindowManager().popupBuddyConfigWindow(Y.getData().buddyTO);
ba.checkTabPermissions();
},this);
this.removeFriendOfListenerFunc=this.trackGui.watchee.getBuddyManager().getEventManager().addListener(a,function(bb){var bc=bb.getData();
this.removeBuddy(bc.getLoginName());
},this);
this.removeBuddyListenerFunc=this.trackGui.watchee.getBuddyManager().getEventManager().addListener(K,function(be){var bf=be.getData();
this.removeBuddy(bf.getLoginName());
},this);
}},updateAvatarAtom:function(bg,bh){if(bh==null){this.log.info("BuddiesWidget.updateAvatarAtom(): avatarAtom is null for '"+bg.getLoginName()+"'");
return;
}bh.setIcon(bg.getAvatarIconUrl());
var bk=bg.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_DEVICE_STATUS);
var bj=null;

if(bk){var bi=this.trc(u,E);

if(bg.isOnline()){bj=new qx.ui.tooltip.ToolTip(this.trc(m,D,bg.getAliasAndLoginName(),bi),xbGetQxIcon(k));
}else{bj=new qx.ui.tooltip.ToolTip(this.trc(m,p,bg.getAliasAndLoginName()),xbGetQxIcon(k));
}}else{bj=new qx.ui.tooltip.ToolTip(this.trc(m,n),xbGetQxIcon(k));
}bj.setRich(true);
bj.setShowTimeout(50);
bh.setToolTip(bj);
},clear:function(){this.removeAllBuddies(true);

if(this.onlineStatusListenerFunc!=null){if(this.trackGui.watchee!=null)this.trackGui.watchee.getBuddyManager().getEventManager().removeListener(org.xmlBlaster.util.PropTO.VALUE_TASK_NAMED_ONLINESTATUS,this.onlineStatusListenerFunc);
this.onlineStatusListenerFunc=null;
}
if(this.updateFriendOfListenerFunc!=null){if(this.trackGui.watchee!=null)this.trackGui.watchee.getBuddyManager().getEventManager().removeListener(b,this.updateFriendOfListenerFunc);
this.updateFriendOfListenerFunc=null;
}
if(this.updateBuddyListenerFunc!=null){if(this.trackGui.watchee!=null)this.trackGui.watchee.getBuddyManager().getEventManager().removeListener(c,this.updateBuddyListenerFunc);
this.updateBuddyListenerFunc=null;
}
if(this.removeFriendOfListenerFunc!=null){if(this.trackGui.watchee!=null)this.trackGui.watchee.getBuddyManager().getEventManager().removeListener(a,this.removeFriendOfListenerFunc);
this.removeFriendOfListenerFunc=null;
}
if(this.removeBuddyListenerFunc!=null){if(this.trackGui.watchee!=null)this.trackGui.watchee.getBuddyManager().getEventManager().removeListener(K,this.removeFriendOfListenerFunc);
this.removeBuddyListenerFunc=null;
}this.trackGui.getWindowManager().clearAllBuddyConfigWindow();
this.trackGui.getWindowManager().clearAllDeviceConfigWindow();
},setBuddies:function(bl){this.removeAllBuddies(false);
var bm=bl.getBuddies();

for(var i=0,l=bm.length;i<l;i++){var bn=bm[i];
this.addBuddy(bn);
}},removeAllBuddies:function(bo){if(this.trackGui.watchee==null)return;
var br=this.buddiesFrame.getChildren();

for(var i=0,l=br.length;i<l;i++){var bp=br[i];
var bs=bp.getUserData(j);
var bq=this.trackGui.getWindowManager().findBuddyConfigWindow(bs.getLoginName());

if(bq!=null){if(bq.destroyPopup&&!(bq.destroyPopup===undefined))bq.destroyPopup();
}}this.buddiesFrame.removeAll();

if(!bo){if(!this.trackGui.watchee.getAccountTO().isPublic()){var bs=this.trackGui.watchee.getAccountTO().getBuddyTO();
this.addBuddy(bs);
}}},removeBuddy:function(bt){if(this.trackGui.watchee==null)return;
var bv=this.findBuddyWidget(bt);

if(bv==null)return;
var bw=bv.getUserData(j);
var bu=this.trackGui.getWindowManager().findBuddyConfigWindow(bw.getLoginName());

if(bu!=null){try{bu.hide();
bu.destroyPopup();
}catch(bx){bu=null;
}}this.buddiesFrame.remove(bv);
},addBuddy:function(by){if(this.trackGui.watchee==null)return;

if(!this.trackGui.watchee.getBuddyManager().showAccount(by.getDevice().getLoginName()))return;
var bA=this.findBuddyWidget(by.getLoginName());

if(bA!=null){var bz=bA.getUserData(j);
bA.setUserData(j,by);
}else this.buddiesFrame.add(this.__vO(by),{left:0,top:0,right:0});
},findBuddyWidget:function(bB){var bD=this.buddiesFrame.getChildren();

for(var i=0,l=bD.length;i<l;i++){var bC=bD[i];
var bE=bC.getUserData(j);

if(bE.getLoginName()==bB)return bC;
}return null;
},findAvatarAtom:function(bF){var bG=this.findBuddyWidget(bF);

if(bG!=null){return bG.getUserData(J);
}return null;
},__vO:function(bH){var bJ=new qx.ui.groupbox.GroupBox(bH.getAliasAndLoginName());
bJ.setLayout(new qx.ui.layout.Canvas());
bJ.setContentPadding(6);
bJ.setUserData(j,bH);

if(bH.isCurrentLoginAccount()){bJ.setTextColor(watcheeColorSelf);
}var bQ=new qx.ui.container.Composite(new qx.ui.layout.HBox(0));
bJ.add(bQ,{left:0,top:0,right:0});
var bN=new qx.ui.basic.Atom(null,bH.getAvatarIconUrl()).set({gap:0,maxHeight:32,maxWidth:32});
bJ.setUserData(J,bN);
bN.addListener(y,function(e){if(bH.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_GPS)){if(this.trackGui.watchee!=null&&bH.getDevice()!=null){var bR=bH.getDevice().getCurrentTrack();
var bS=bR.getLastValidGpsData();

if(bS!=null){this.trackGui.watchee.getMapManager().showAndCenterLocation(bR,bS);
return;
}}this.trackGui.infoMsgBox(this.trc(M,o,bH.getLoginName()),4000);
}else{this.trackGui.infoMsgBox(this.trc(M,r,bH.getLoginName()),4000);
}},this);
this.updateAvatarAtom(bH,bN);
bQ.add(bN,{left:0,top:0});
var bP=new qx.ui.form.Button(null,xbGetIcon(q));
bJ.setUserData(z,bP);

with(bP){setPadding(0);
setMargin(0);
setMaxWidth(30);
var bM=new qx.ui.tooltip.ToolTip(this.trc(m,A,bH.getAlias()),xbGetQxIcon(s));
bM.setRich(true);
bM.setShowTimeout(50);
setToolTip(bM);
addListener(g,function(e){this.trackGui.getWindowManager().popupDeviceConfigWindow(bH);
},this);
}bQ.add(bP,{left:0,top:0});
var bL=new qx.ui.form.Button(null,xbGetIcon(G));

with(bL){setMaxWidth(85);
var bM=new qx.ui.tooltip.ToolTip(this.trc(m,C,bH.getAlias()),xbGetQxIcon(k));
bM.setRich(true);
bM.setShowTimeout(50);
setToolTip(bM);
addListener(g,function(e){this.trackGui.getWindowManager().popupBuddyConfigWindow(bH);
},this);
}bQ.add(bL,{left:0,top:0});
var bO=new qx.ui.form.Button(null,xbGetQxIcon(t));

with(bO){setMaxWidth(85);
var bM=new qx.ui.tooltip.ToolTip(this.trc(m,H,bH.getAlias()),xbGetQxIcon(k));
bM.setRich(true);
bM.setShowTimeout(50);
setToolTip(bM);
addListener(g,function(e){this.trackGui.getWindowManager().popupTrackConfigWindow(bH);
},this);
}bQ.add(bO,{left:0,top:0});
var bK=new qx.ui.form.Button(this.trc(f,d),xbGetQxIcon(N));
bJ.setUserData(I,bK);

with(bK){setMaxWidth(200);
setUserData(h,false);
this.updateTrackButton(bH,bK);
addListener(g,function(e){if(bH.isTracking)this.stopTracking(bH,bK);
else this.startTracking(bH,bK);
},this);
}bQ.add(bK,{left:0,top:0});

if(bH.getDevice()!=null&&bH.getDevice().isTrackingInitiallyOn()){var bI=bH;
qx.event.Timer.once(function(){this.startTracking(bI);
},this,0);
}return bJ;
},startTracking:function(bT){if(bT.isTracking)return;

if(!bT.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_GPS))return;
bT.isTracking=true;
var bU=this.findTrackButton(bT.getLoginName());
this._trackButtonPress(bU);
this.trackGui.subscribeGps(bT);
this.updateTrackButton(bT,bU);
},stopTracking:function(bV){if(!bV.isTracking)return;
bV.isTracking=false;
var bW=this.findTrackButton(bV.getLoginName());
this._trackButtonRelease(bW);
this.trackGui.unSubscribeGps(bV);
this.updateTrackButton(bV,bW);
},_trackButtonPress:function(bX){with(bX){setLabel(this.trc(f,x));
setIcon(xbGetQxIcon(v));
setUserData(h,true);
}},_trackButtonRelease:function(bY){with(bY){setLabel(this.trc(f,d));
setIcon(xbGetQxIcon(N));
setUserData(h,false);
}},findTrackButton:function(ca){var cb=this.findBuddyWidget(ca);

if(cb!=null){return cb.getUserData(I);
}return null;
},updateTrackButton:function(cc,cd){if(cd==null){this.log.error("buddiesWidget.js updateTrackButton is null");
return;
}
with(cd){var cg=cc.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_GPS);

if(cc.isCurrentLoginAccount())cg=true;
var cf=(cg)?new qx.ui.tooltip.ToolTip(this.trc(m,w,cc.getAlias()),xbGetQxIcon(k)):new qx.ui.tooltip.ToolTip(this.trc(m,B,cc.getAlias()),xbGetQxIcon(k));
cf.setRich(true);
cf.setShowTimeout(50);
setToolTip(cf);
setEnabled(cg);
var ce=cd.getUserData(h);
if(!cg&&ce){this._trackButtonRelease(cd);
this.trackGui.unSubscribeGps(cc);
}}}},destruct:function(){this.clear();
}});
})();
(function(){var j="navigate",i="String",h="qx.ui.embed.AbstractIframe",g="name",f="",d="_applySource",c="qx.event.type.Event",b="_applyFrameName",a="qx.event.type.Data";
qx.Class.define(h,{extend:qx.ui.core.Widget,construct:function(k){qx.ui.core.Widget.call(this);

if(k){this.setSource(k);
}this._getIframeElement().addListener(j,this.__vP,this);
},events:{"load":c,"navigate":a},properties:{source:{check:i,apply:d,nullable:true},frameName:{check:i,init:f,apply:b}},members:{_getIframeElement:function(){throw new Error("Abstract method call");
},_applySource:function(l,m){this._getIframeElement().setSource(l);
},_applyFrameName:function(n,o){this._getIframeElement().setAttribute(g,n);
},getWindow:function(){return this._getIframeElement().getWindow();
},getDocument:function(){return this._getIframeElement().getDocument();
},getBody:function(){return this._getIframeElement().getBody();
},getName:function(){return this._getIframeElement().getName();
},reload:function(){this._getIframeElement().reload();
},__vP:function(e){var p=e.getData();

if(p){this.setSource(p);
}this.fireDataEvent(j,p);
}}});
})();
(function(){var u="auto",t="iframe",s="scrollbar-y",r="corner",q="on",p="scrollbar-x",o="scroll",n="hidden",m="_updateScrollbars",l="load",d="off",k="resize",h="interval",c="horizontal",b="mousewheel",g="qx.ui.embed.ThemedIframe",f="scrollbarX",i="scrollbarY",a="scrollarea",j="vertical";
qx.Class.define(g,{extend:qx.ui.embed.AbstractIframe,include:qx.ui.core.scroll.MWheelHandling,construct:function(v){qx.ui.embed.AbstractIframe.call(this,v);
var w=new qx.ui.layout.Grid();
w.setColumnFlex(0,1);
w.setRowFlex(0,1);
this._setLayout(w);
this._showChildControl(t);
},properties:{appearance:{refine:true,init:a},scrollbarX:{check:[u,q,d],init:u,themeable:true,apply:m},scrollbarY:{check:[u,q,d],init:u,themeable:true,apply:m},scrollbar:{group:[f,i]}},members:{__vQ:null,__vR:null,_getIframeElement:function(){return this.getChildControl(t).getContentElement();
},_createChildControlImpl:function(z,A){var B;

switch(z){case t:B=new qx.ui.embed.Iframe(this.getSource());
B.addListener(l,this._onIframeLoad,this);
B.addListener(k,this._onIframeResize,this);
this._add(B,{row:0,column:0});
break;
case p:B=new qx.ui.core.scroll.ScrollBar(c);
B.setMinWidth(0);
B.exclude();
B.addListener(o,this._onScrollBarX,this);
this._add(B,{row:1,column:0});
break;
case s:B=new qx.ui.core.scroll.ScrollBar(j);
B.setMinHeight(0);
B.exclude();
B.addListener(o,this._onScrollBarY,this);
this._add(B,{row:0,column:1});
break;
case r:B=new qx.ui.core.Widget();
B.setWidth(0);
B.setHeight(0);
B.exclude();
this._add(B,{row:1,column:1});
break;
}return B||qx.ui.embed.AbstractIframe.prototype._createChildControlImpl.call(this,z);
},_onIframeLoad:function(){this._disableScollbars();
var C=this._getIframeElement().getBody();

if(C){this._startIframeObserver();
this._addWheelListener();
}this.fireEvent(l);
},_onIframeResize:function(){this._updateScrollbars();
},_disableScollbars:function(){this._excludeChildControl(p);
this._excludeChildControl(s);
this._excludeChildControl(r);
this._stopIframeObserver();
},_addWheelListener:function(){try{var D=this._getIframeElement().getBody();
qx.bom.Element.addListener(D,b,this._onMouseWheel,this);
}catch(e){this._disableScollbars();
}},_startIframeObserver:function(){if(this.__vR){this._stopIframeObserver();
}var E=qx.event.Idle.getInstance();
this.__vR=E.addListener(h,this._onIframeObserverInterval,this);
},_stopIframeObserver:function(){this.__vQ=null;

if(!this.__vR){return;
}var F=qx.event.Idle.getInstance();
F.removeListenerById(this.__vR);
},_onIframeObserverInterval:function(){var G=this._getIframeSize();

if(!G){this._disableScollbars();
return;
}
if(this.__vQ&&G.width==this.__vQ.width&&G.height==this.__vQ.height){return;
}this.__vQ=G;
this._preventIframeScrolling();
this._updateScrollbars();
},_preventIframeScrolling:function(){try{var H=this._getIframeElement().getWindow();
var I=this._getIframeElement().getDocument();

if(qx.bom.Document.isStandardMode(H)){I.documentElement.style.overflow=n;
}else{I.body.style.overflow=n;
}}catch(e){this._disableScollbars();
}},_updateScrollbars:function(){var J=this.__vQ;
var M=this.getChildControl(t).getBounds();
var K=this.getChildControl(t).getInnerSize();

if(!J||!K||!K){return;
}var L=false;
var P=false;
var N=this.getScrollbarX();
var O=this.getScrollbarY();

if(N===u&&O===u){var L=J.width>K.width;
var P=J.height>K.height;
if((L||P)&&!(L&&P)){if(L){P=J.height>M.height;
}else if(P){L=J.width>M.width;
}}}else{var L=N===q;
var P=O===q;
if(J.width>(L?M.width:K.width)&&N===u){L=true;
}
if(J.height>(L?M.height:K.height)&&O===u){P=true;
}}this._configureScrollbar(p,L,K.width,J.width);
this._configureScrollbar(s,P,K.height,J.height);
this._updateCornerWidget();
},_getIframeSize:function(){try{var Q=this._getIframeElement().getWindow();
var R={width:qx.bom.Document.getWidth(Q),height:qx.bom.Document.getHeight(Q)};
return R;
}catch(e){return null;
}},_updateCornerWidget:function(){if(this._isChildControlVisible(p)&&this._isChildControlVisible(s)){this._showChildControl(r);
}else{this._excludeChildControl(r);
}},_configureScrollbar:function(S,T,U,V){if(!T){this._excludeChildControl(S);
return;
}var W=this._showChildControl(S);

if(U>=V){W.set({position:0,maximum:V,knobFactor:1,enabled:false});
}else{W.setMaximum(1000000);
W.set({position:Math.min(W.getPosition(),V),maximum:V-U,knobFactor:U/V,enabled:true});
}},_onScrollBarX:function(e){this.scrollToX(e.getData());
},_onScrollBarY:function(e){this.scrollToY(e.getData());
},scrollToX:function(x){try{var X=this._getIframeElement().getWindow();
X.scroll(x,qx.bom.Viewport.getScrollTop(X));
}catch(e){this._disableScollbars();
}},scrollToY:function(y){try{var Y=this._getIframeElement().getWindow();
Y.scroll(qx.bom.Viewport.getScrollLeft(Y),y);
}catch(e){this._disableScollbars();
}}},destruct:function(){this._stopIframeObserver();
this.__vQ=null;
}});
})();
(function(){var k="mousedown",j="load",i="help",h="engine.name",g="mouseup",f="losecapture",d="contextmenu",c="none",b="display",a="no",z="Boolean",y="px",x="gecko",w="__vT",v="auto",u="_applyScrollbar",t="DOMNodeInserted",s="_applyNativeHelp",r="yes",q="scrolling",o="/",p="appear",m="block",n="qx.ui.embed.Iframe",l="iframe";
qx.Class.define(n,{extend:qx.ui.embed.AbstractIframe,construct:function(A){if(A!=null){this.__vS=A;
}qx.ui.embed.AbstractIframe.call(this,A);
qx.event.Registration.addListener(document.body,k,this.block,this,true);
qx.event.Registration.addListener(document.body,g,this.release,this,true);
qx.event.Registration.addListener(document.body,f,this.release,this,true);
this.__vT=this._createBlockerElement();
this.getContainerElement().add(this.__vT);

if((qx.core.Environment.get(h)==x)){this.addListenerOnce(p,function(e){var B=this.getContainerElement().getDomElement();
qx.bom.Event.addNativeListener(B,t,this._onDOMNodeInserted);
});
this._onDOMNodeInserted=qx.lang.Function.listener(this._syncSourceAfterDOMMove,this);
}},properties:{appearance:{refine:true,init:l},nativeContextMenu:{refine:true,init:false},nativeHelp:{check:z,init:false,apply:s},scrollbar:{check:[v,a,r],nullable:true,themeable:true,apply:u}},members:{__vS:null,__vT:null,renderLayout:function(C,top,D,E){qx.ui.embed.AbstractIframe.prototype.renderLayout.call(this,C,top,D,E);
var G=y;
var F=this.getInsets();
this.__vT.setStyles({"left":F.left+G,"top":F.top+G,"width":(D-F.left-F.right)+G,"height":(E-F.top-F.bottom)+G});
},_createContentElement:function(){var H=new qx.html.Iframe(this.__vS);
H.addListener(j,this._onIframeLoad,this);
return H;
},_getIframeElement:function(){return this.getContentElement();
},_createBlockerElement:function(){var I=new qx.html.Blocker();
I.setStyles({"zIndex":20,"display":c});
return I;
},_onIframeLoad:function(e){this._applyNativeContextMenu(this.getNativeContextMenu(),null);
this._applyNativeHelp(this.getNativeHelp(),null);
this.fireNonBubblingEvent(j);
},block:function(){this.__vT.setStyle(b,m);
},release:function(){this.__vT.setStyle(b,c);
},_applyNativeContextMenu:function(J,K){if(J!==false&&K!==false){return;
}var L=this.getDocument();

if(!L){return;
}
try{var M=L.documentElement;
}catch(e){return ;
}
if(K===false){qx.event.Registration.removeListener(M,d,this._onNativeContextMenu,this,true);
}
if(J===false){qx.event.Registration.addListener(M,d,this._onNativeContextMenu,this,true);
}},_onNativeContextMenu:function(e){e.preventDefault();
},_applyNativeHelp:qx.core.Environment.select(h,{"mshtml":function(N,O){var document=this.getDocument();

if(!document){return;
}
try{if(O===false){qx.bom.Event.removeNativeListener(document,i,qx.lang.Function.returnFalse);
}
if(N===false){qx.bom.Event.addNativeListener(document,i,qx.lang.Function.returnFalse);
}}catch(e){}},"default":function(){}}),_syncSourceAfterDOMMove:function(){var Q=this.getContentElement().getDomElement();
var P=Q.src;
if(P.charAt(P.length-1)==o){P=P.substring(0,P.length-1);
}
if(P!=this.getSource()){qx.bom.Iframe.getWindow(Q).stop();
Q.src=this.getSource();
}},_applyScrollbar:function(R){this.getContentElement().setAttribute(q,R);
}},destruct:function(){this._disposeObjects(w);
qx.event.Registration.removeListener(document.body,k,this.block,this,true);
qx.event.Registration.removeListener(document.body,g,this.release,this,true);
qx.event.Registration.removeListener(document.body,f,this.release,this,true);
}});
})();
(function(){var h="source",g="name",f="qx.event.type.Event",d="iframe",c="qx.html.Iframe",b="navigate",a="qx.event.type.Data";
qx.Class.define(c,{extend:qx.html.Element,construct:function(i,j,k){qx.html.Element.call(this,d,j,k);
this.setSource(i);
this.addListener(b,this.__vP,this);
},events:{"load":f,"navigate":a},members:{_applyProperty:function(name,l){qx.html.Element.prototype._applyProperty.call(this,name,l);

if(name==h){var n=this.getDomElement();
var m=qx.bom.Iframe.queryCurrentUrl(n);
if(l===m){return;
}qx.bom.Iframe.setSource(n,l);
}},_createDomElement:function(){return qx.bom.Iframe.create(this._content);
},getWindow:function(){var o=this.getDomElement();

if(o){return qx.bom.Iframe.getWindow(o);
}else{return null;
}},getDocument:function(){var p=this.getDomElement();

if(p){return qx.bom.Iframe.getDocument(p);
}else{return null;
}},getBody:function(){var q=this.getDomElement();

if(q){return qx.bom.Iframe.getBody(q);
}else{return null;
}},setSource:function(r){this._setProperty(h,r);
return this;
},getSource:function(){return this._getProperty(h);
},setName:function(name){this.setAttribute(g,name);
return this;
},getName:function(){return this.getAttribute(g);
},reload:function(){var t=this.getDomElement();

if(t){var s=this.getSource();
this.setSource(null);
this.setSource(s);
}},__vP:function(e){var u=e.getData();

if(u){this.setSource(u);
}}}});
})();
(function(){var d="qx.event.handler.Iframe",c="load",b="iframe",a="navigate";
qx.Class.define(d,{extend:qx.core.Object,implement:qx.event.IEventHandler,statics:{PRIORITY:qx.event.Registration.PRIORITY_NORMAL,SUPPORTED_TYPES:{load:1,navigate:1},TARGET_CHECK:qx.event.IEventHandler.TARGET_DOMNODE,IGNORE_CAN_HANDLE:false,onevent:qx.event.GlobalError.observeMethod(function(e){var f=qx.bom.Iframe.queryCurrentUrl(e);

if(f!==e.$$url){qx.event.Registration.fireEvent(e,a,qx.event.type.Data,[f]);
e.$$url=f;
}qx.event.Registration.fireEvent(e,c);
})},members:{canHandleEvent:function(g,h){return g.tagName.toLowerCase()===b;
},registerEvent:function(i,j,k){},unregisterEvent:function(l,m,n){}},defer:function(o){qx.event.Registration.addHandler(o);
}});
})();
(function(){var i="engine.name",h="load",g="",f="qx.bom.Iframe",e="osx",d="os.name",c="webkit",b="iframe",a="body";
qx.Class.define(f,{statics:{DEFAULT_ATTRIBUTES:{onload:"qx.event.handler.Iframe.onevent(this)",frameBorder:0,frameSpacing:0,marginWidth:0,marginHeight:0,hspace:0,vspace:0,border:0,allowTransparency:true},create:function(j,k){var j=j?qx.lang.Object.clone(j):{};
var l=qx.bom.Iframe.DEFAULT_ATTRIBUTES;

for(var m in l){if(j[m]==null){j[m]=l[m];
}}return qx.bom.Element.create(b,j,k);
},getWindow:function(n){try{return n.contentWindow;
}catch(o){return null;
}},getDocument:qx.core.Environment.select(i,{"mshtml":function(p){try{var q=this.getWindow(p);
return q?q.document:null;
}catch(r){return null;
}},"default":function(s){try{return s.contentDocument;
}catch(t){return null;
}}}),getBody:function(u){try{var v=this.getDocument(u);
return v?v.getElementsByTagName(a)[0]:null;
}catch(w){return null;
}},setSource:function(x,y){try{if(this.getWindow(x)&&qx.dom.Hierarchy.isRendered(x)){try{if((qx.core.Environment.get(i)==c)&&qx.core.Environment.get(d)==e){var z=this.getWindow(x);

if(z){z.stop();
}}this.getWindow(x).location.replace(y);
}catch(A){x.src=y;
}}else{x.src=y;
}this.__vU(x);
}catch(B){qx.log.Logger.warn("Iframe source could not be set!");
}},queryCurrentUrl:function(C){var D=this.getDocument(C);

try{if(D&&D.location){return D.location.href;
}}catch(E){}return g;
},__vU:function(F){var G=function(){qx.bom.Event.removeNativeListener(F,h,G);
F.$$url=qx.bom.Iframe.queryCurrentUrl(F);
};
qx.bom.Event.addNativeListener(F,h,G);
}}});
})();
(function(){var m="update",l="statusTab.enabled",k="photoTab.enabled",j="track.xsmsphoto.XsmsPhoto",i=")",h="showXsmsTab",g="embeddedHtmlFrameLeftBottom.url",f="XsmsPhoto.setEnable(",e="showInfoTab",d="showPhotoTab",a="showTabOnEvent",c="countBlinkOnEvent",b="xsmsTab.enabled";
qx.Class.define(j,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(n){qx.core.Object.call(this);
this.trackGui=n;
this.log=this.trackGui.getLogger();
this.trackGui.controlFrame.add(this.__vV(),1);
},members:{setEnabled:function(o){if(this.eventTabView!=null){this.eventTabView.setEnabled(o);
this.trackGui.getLogger(f+o+i);
}},__vV:function(){this.eventTabView=new track.util.EnhancedTabView();
this.eventTabView.setMinHeight(208);
var q=xbProperties.getBoolean(l,true);

if(q){this.statusTab=new track.xsmsphoto.StatusTab();
this.eventTabView.add(this.statusTab);
}var p=xbProperties.getBoolean(b,true);

if(p){this.xsmsTab=new track.xsmsphoto.XsmsTab(this);
this.eventTabView.add(this.xsmsTab);
}var r=xbProperties.getBoolean(k,true);

if(r){this.photoTab=new track.xsmsphoto.PhotoTab(this);
this.eventTabView.add(this.photoTab);
}
if(xbProperties.getStr(g,null)!=null){this.infoTab=new track.xsmsphoto.InfoTab(this);
this.eventTabView.add(this.infoTab.createTab(this.eventTabView));
}this.showTabOnEvent=xbProperties.getBoolean(a,false);
this.countBlinkOnEvent=xbProperties.getInt(c,3);

if(this.statusTab!=null){this.statusTab.addListener(m,function(){this.info("update statusTab");

if(this.showTabOnEvent)this.eventTabView.setSelection([this.statusTab]);

if(this.countBlinkOnEvent>0)this.statusTab.blink(this.countBlinkOnEvent);
},this);
}
if(this.xsmsTab!=null){this.xsmsTab.addListener(m,function(){this.info("update xsmsTab");

if(this.showTabOnEvent)this.eventTabView.setSelection([this.xsmsTab]);

if(this.countBlinkOnEvent>0)this.xsmsTab.blink(this.countBlinkOnEvent);
},this);
}
if(this.photoTab!=null){this.photoTab.addListener(m,function(){this.info("update photoTab");

if(this.showTabOnEvent)this.eventTabView.setSelection([this.photoTab]);

if(this.countBlinkOnEvent>0)this.photoTab.blink(this.countBlinkOnEvent);
},this);
}
if(this.xsmsTab!=null&&xbProperties.getBoolean(h,false)){this.eventTabView.setSelection([this.xsmsTab]);
}
if(this.photoTab!=null&&xbProperties.getBoolean(d,false)){this.eventTabView.setSelection([this.photoTab]);
}
if(this.infoTab!=null&&xbProperties.getBoolean(e,false)){this.eventTabView.setSelection([this.infoTab.getPage()]);
}return this.eventTabView;
},initializeTabView:function(){if(this.xsmsTab!=null){this.xsmsTab.initializeXsmsPane();
}
if(this.photoTab!=null){this.photoTab.initializePhotoPage();
}},clearTabView:function(){try{this.statusTab.clearStatusPane();
}catch(s){this.error("this.statusTab.clearStatusPane() "+s);
}
try{if(this.xsmsTab!=null){this.xsmsTab.clearXsmsPane();
}}catch(t){this.error("this.xsmsTab.clearXsmsPane() "+t);
}
try{if(this.photoTab!=null){this.photoTab.clearPhotoPage();
}}catch(u){this.error("this.photoTab.clearPhotoPage() "+u);
}}},destruct:function(){this.trackGui=null;
this.log=null;
}});
})();
(function(){var j="xSMS-error",i="#DADADA",h="green",g="info",f="</br>",e="black",d="queued=true",c="</font>",b="Warning: <font color='%1'>Device is not connected. An SMS is sent and we are now waiting for the SMS response from the device ...</font>",a="  at: %1",z="Status",y="Warning: <font color='%1'>Device is not connected. The command is queued and will be send when device connects next time</font>",x="yellow",w="Error: <font color='%1'>%2</font>",v="<font color='green'>",u="incrementalResponse=true",t="qx.event.type.Event",s="tab title",r="#ADADAD",q="brown",o="track.xsmsphoto.StatusTab",p="update",m="From: %1",n="sms=true",k="16/download.png",l="red";
qx.Class.define(o,{extend:track.util.EnhancedTabViewPage,include:[qx.locale.MTranslation],construct:function(){track.util.EnhancedTabViewPage.call(this,this.trc(s,z),xbGetIcon(k));
this.setLayout(new qx.ui.layout.Canvas());
this.frame=new qx.ui.container.Composite(new qx.ui.layout.VBox(4));
this.scroller=new qx.ui.container.Scroll();
this.scroller.add(this.frame);
this.add(this.scroller,{left:0,top:0,right:0,bottom:0});
this.color=i;
this.lastStatusLabel=null;
},events:{"update":t},members:{__vW:function(){if(this.color==i){this.color=r;
}else{this.color=i;
}return this.color;
},receivedStatus:function(A,B,C,D,E){this.info("Received Status");
var K=org.xmlBlaster.util.getTimeStr();
var G=this.trc(g,m,B)+this.trc(g,a,K)+f;
var L=(E!=null&&E.indexOf(d)!=-1);
var M=(E!=null&&E.indexOf(u)!=-1);
var J=(E!=null&&E.indexOf(n)!=-1);
var F=e;

if(D!=null){F=l;
}else if(M&&J){F=q;
}else if(L){F=x;
}else{F=h;
}var H=null;

if(D!=null){H=this.trc(j,w,F,D);
}else if(M&&J){H=this.trc(j,b,F);
}else if(L){H=this.trc(j,y,F);
}
if(H!=null){G+=H+f;
}
if(F==h)C=v+C+c;
G+=C;
var I=new qx.ui.basic.Label(G);
I.setAllowGrowX(true);
I.setRich(true);
I.setBackgroundColor(this.__vW());
if(this.lastStatusLabel==null){this.frame.add(I);
}else{this.frame.addBefore(I,this.lastStatusLabel);
}this.lastStatusLabel=I;
this.fireEvent(p);
},clearStatusPane:function(){if(org.xmlBlaster.util.isDefined(this.frame)){this.frame.removeAll();
this.lastStatusLabel=null;
}}},destruct:function(){this._disposeFields();
this._disposeObjects();
}});
})();
(function(){var p="",o="xSMS-error",n="requestInfo.exception.errorCode",m="right",k="xsmsSenderName",j="__ASYNC__",h="info box",g="xsms",f="info",d="requestInfo.timedout",bw="button-checked",bv="Error: <font color='%1'>%2</font>",bu="Sending a message:",bt="queued=true",bs="Warning: <font color='%1'>Device is not connected. The command is queued and will be send when device connects next time</font>",br="_watcheeService",bq="Warning: <font color='%1'>Device is not connected. An SMS is sent and we are now waiting for the SMS response from the device ...</font>",bp="GPS Portal",bo="focus",bn="xSMS is sent to %1<br /><i>%2</i>",w="sms=true",x="updateFriendOf",u="changed",v="Timeout",s="xsmsMaySendToOthers",t="button",q="To: ",r="execute",E="Please choose a destination address.",F="22/actions/dialog-ok.png",R="promptMsgBox-label",N="yellow",ba="sendRawCommandToTracker",U="sendxSMS",bj="black",bf="center",J="brown",bm="incrementalResponse=true",bl="Please login first.",bk="loginName",I="Subject: <font color='%1'>%2</font>",L="qx.event.type.Event",M="track.xsmsphoto.XsmsTab",P="middle",S="textArea",V="<<Enter Text>>",bc="tab title",bh="To: %1",y="16/apps/utilities-text-editor.png",z="Send",K="Your sender nick-name",Y="appear",X="off",W="xSMS",be="main",bd="16/actions/mail-mark-read.png",T="<i>for example 'Freddy', more than 3 characters, you can't change it during this session!</i>",bb="xSMS-subject",a="click",bg="update",A="\n",B="red",O="infoMsgBox",b="promptMsgBox-title",c="To label",H="groupbox title",C="left",D="green",G="From: %1",Q="resultCsvFlag",bi="Please enter a nick name to identify yourself<br />";
qx.Class.define(M,{extend:track.util.EnhancedTabViewPage,include:[qx.locale.MTranslation],construct:function(bx){track.util.EnhancedTabViewPage.call(this,this.trc(bc,W),xbGetQxIcon(bd));
this.setLayout(new qx.ui.layout.VBox(4));
this.xsmsPhoto=bx;
this.trackGui=this.xsmsPhoto.trackGui;
this.log=this.trackGui.getLogger();
this.defaultText=this.trc(S,V);
this.eventTabXSms=null;
this.__vX();
this.__vY();
},events:{"update":L},members:{__vX:function(){var by=new qx.ui.layout.VBox(4);
this.xsmsInboxFrame=new qx.ui.container.Composite(by);
this.xsmsInboxFrame.setDecorator(be);
this.xsmsInboxFrameScroller=new qx.ui.container.Scroll();
this.xsmsInboxFrameScroller.setScrollbarX(X);
this.xsmsInboxFrameScroller.add(this.xsmsInboxFrame);
this.add(this.xsmsInboxFrameScroller,{flex:1});
},__vY:function(){var bB=new qx.ui.groupbox.GroupBox(this.trc(H,bu),xbGetQxIcon(y));
bB.setContentPadding(1);
var bA=new qx.ui.layout.VBox();
bB.setLayout(bA);
this.add(bB);
this.writeTextArea=new qx.ui.form.TextArea(this.defaultText);
this.writeTextArea.setPadding(0);
this.writeTextArea.setMargin(0);
this.writeTextArea.setWrap(true);
this.writeTextArea.addListener(bo,function(e){var bC=org.xmlBlaster.util.trim(this.writeTextArea.getValue());

if(bC==this.defaultText){this.writeTextArea.setValue(p);
}},this);
bB.add(this.writeTextArea);
this.sendBox=new qx.ui.container.Composite(new qx.ui.layout.HBox(0));
bB.add(this.sendBox,{flex:1});
this.sendXsmsButton=new qx.ui.form.Button(this.trc(t,z),xbGetQxIcon(F));

with(this.sendXsmsButton){setAlignX(m);
addListener(r,function(e){var bE=org.xmlBlaster.util.trim(this.writeTextArea.getValue());

if(bE.length<1||bE==this.defaultText){this.writeTextArea.setValue(this.defaultText);
return;
}var bG=this.selectBoxDestinations.getSelection()[0];

if(!org.xmlBlaster.util.isDefined(bG)){this.trackGui.errorMsgBox(this.trc(h,E));
return;
}var bF=bG.getModel();

if(bF.length<1){return;
}
if(this.trackGui.watchee==null){this.trackGui.errorMsgBox(this.trc(h,bl));
return;
}var bJ=this.__wa(bF,bE);

if(j!=bJ){this.__wb(bF,bJ,bE);
var bD=xbProperties.getBoolean(ba,false);

if(bD){var bH=bE;
var bI=null;
this.trackGui.sendRawDeviceCommand(bF,bI,bH);
}}},this);
}this.sendBox.add(this.sendXsmsButton);
var bz=new qx.ui.basic.Label(this.trc(c,q));

with(bz){setAlignY(P);
setPaddingTop(5);
setPaddingLeft(2);
setPaddingRight(2);
setTextAlign(m);
}this.sendBox.add(bz);
this.selectBoxDestinations=new qx.ui.form.SelectBox();
this.sendBox.add(this.selectBoxDestinations,{flex:1});
return bB;
},__wa:function(bK,bL){if(this.trackGui.watchee==null){return null;
}xsmsSenderName=xbProperties.getStr(k,null);

if(!org.xmlBlaster.util.isFilled(xsmsSenderName)&&this.trackGui.watchee.getAccountTO().isPublic()){var bM=xsmsSenderName==null?p:xsmsSenderName;
var bO=3;
var bN=false;
this.trackGui.promptMsgBox(this.trc(b,K),this.trc(R,bi+T),bM,bO,bN,function(bP,bQ){if(bP){xbProperties.setAccountProp(k,bQ);
this.trackGui.makeLoginLabel(null);
this.__wb(bK,bQ,bL);
}else{}},this);
return j;
}return xsmsSenderName;
},__wb:function(bR,bS,bT){if(bS!=null){bT+=A+bS;
}var bV=this.trackGui.watchee.getBuddyManager().getBuddyOrFriendOf(bR);
this.debug("Send xSMS to single client "+bV.getLoginName());
var bW=p;
var bU=new net.watchee.X_SMS(this.trackGui.watchee.getLoginName(),bV.getLoginName(),bW,bT);
this.trackGui.watchee.sendxSMS(bV.getLoginName(),null,bU,function(bX,bY,ca){this.debug("Send xSMS to "+bU.getToStr()+" succeeded");
this.xsmsPhoto.xsmsTab.addXsms(bU);
this.trackGui.infoMsgBox(this.trc(O,bn,bV.getLoginName(),bU.getBody()),3000,false);
},this,U);
},addXsms:function(cb){this.xsmsInboxFrame.add(this.createSingleXsmsBox(cb));
},receivedxSMS:function(cc){this.info("Received xSMS "+cc.dump());
var cd=this.createSingleXsmsBox(cc);
var ch=this.xsmsInboxFrame.getChildren();

if(ch.length>0){var cg=cc.xmlBlasterRcvTimestampNanos;

for(var i=0;i<ch.length;i++){var cf=ch[i].getUserData(g);

if(cc!=null&&cf!=null){var ce=cf.xmlBlasterRcvTimestampNanos;

if(cg<ce){this.xsmsInboxFrame.addAt(cd,i);
return;
}}}}this.xsmsInboxFrame.add(cd);
},initializeXsmsPane:function(){if(this.trackGui.watchee==null)return;
this.trackGui.watchee.getBuddyManager().getEventManager().addListener(u,function(ci){if(this.trackGui.watchee==null)return;

if(!this.trackGui.watchee.getBuddyManager().buddiesInboundIsSet)return;
var cj=net.watchee.BuddyPermissionTO.PERMISSION_XSMS;
var cl=this.trackGui.watchee.getBuddyManager().getFriendOfList(cj);
this.selectBoxDestinations.removeAll();
var cm=this.trackGui.watchee.getAccountTO().getBuddyTO();
var cn=this.__pK(cm);
this.selectBoxDestinations.add(cn);
this.selectBoxDestinations.setSelection([cn]);
var cp=xbProperties.getBoolean(s,true);

if(cp){for(var i=0,l=cl.length;i<l;i++){var ck=cl[i];
var co=this.__pK(ck);
this.selectBoxDestinations.add(co);
}}},this);
},__pK:function(cq){var ct=new qx.ui.form.ListItem(cq.getAliasAndLoginName(),cq.getAvatarIconUrlSmall(),cq.getLoginName());
var cr=this.trackGui.watchee.getBuddyManager().getEventManager().addListener(org.xmlBlaster.util.PropTO.VALUE_TASK_NAMED_ONLINESTATUS,function(cu){if(cu.getData().loginName==ct.getModel())ct.setIcon(cu.getData().buddyTO.getAvatarIconUrlSmall());
},this);
var cs=this.trackGui.watchee.getBuddyManager().getEventManager().addListener(x,function(cv){if(cv.getData().buddyTO.getLoginName()==ct.getModel())ct.setIcon(cv.getData().buddyTO.getAvatarIconUrlSmall());
},this);
return ct;
},createSingleXsmsBox:function(cw){this.info("createSingleXsmsBox "+cw.dump());
var cB=new qx.ui.layout.VBox(0);
var cy=new qx.ui.container.Composite(cB);
cy.setDecorator(bw);
cy.setUserData(g,cw);
var cM=new qx.ui.container.Composite(new qx.ui.layout.HBox(0));
cy.add(cM);
var cA=cw.getFrom().getSubjectId();
var cJ=this.trackGui.watchee.getBuddyManager().getBuddyOrFriendOf(cA);

if(cJ!=null)cA=cJ.getAliasAndLoginName();

if(cA==br){cA=cw.getProperties().get(bk,bp);
}var cD=new qx.ui.basic.Atom(this.trc(f,G,cA));
cD.setPaddingLeft(10);
cM.add(cD);

if(!cw.isTo(this.trackGui.watchee.getLoginName())){var cx=new qx.ui.basic.Atom(this.trc(f,bh,cw.getTo().getSubjectId()));
cM.add(cx);
}var cz=cw.getProperties().contains(n)||cw.getProperties().contains(d);
var cI=cw.getProperties().get(Q,null);
var cN=(cI!=null&&cI.indexOf(bt)!=-1);
var cO=(cI!=null&&cI.indexOf(bm)!=-1);
var cG=(cI!=null&&cI.indexOf(w)!=-1);
var cC=bj;

if(cz){cC=B;
}else if(cO&&cG){cC=J;
}else if(cN){cC=N;
}else{cC=D;
}
if(cw.hasSubject()){var cP=null;
var cP=new qx.ui.basic.Label(this.trc(bb,I,cC,cw.getSubject()));

with(cP){setRich(true);
setPaddingLeft(10);
setPaddingRight(5);
setTextAlign(bf);
}cy.add(cP);
}var cL=new qx.ui.basic.Label(cw.getLocalSendTimeStr());

with(cL){setTextAlign(m);
setPaddingLeft(10);
setPaddingRight(5);
}cM.add(cL);
var cE=null;

if(cz){var cH=cw.getProperties().contains(d)?this.trc(o,v):p;

if(cw.getProperties().contains(n))cH=cw.getProperties().get(n,p);
cE=this.trc(o,bv,cC,cH);
}else if(cO&&cG){cE=this.trc(o,bq,cC);
}else if(cN){cE=this.trc(o,bs,cC);
}
if(cE!=null){var cK=new qx.ui.basic.Label(cE);

with(cK){setRich(true);
setPaddingLeft(10);
setPaddingRight(5);
setTextAlign(C);
}cy.add(cK);
}var cF=new qx.ui.form.TextArea(cw.getBody());
cF.setDecorator(null);
cF.setWrap(true);
cF.setReadOnly(true);
cy.add(cF);
cF.addListener(Y,function(e){var cQ=e.getTarget();
this.xsmsInboxFrameScroller.scrollToY(1000000);
},this);
cF.addListener(a,function(e){if(this.trackGui.watchee==null||this.trackGui.watchee.getMapManager()==null)return;
this.info("click widget is "+e);
var cS=cw.getEnmea();

if(!org.xmlBlaster.util.isFilled(cS)){this.info("No enmea with xSMS");
return;
}var cV=cw.getFromStr();
var cW=this.trackGui.watchee.getDevice(cV);
var cT=new net.watchee.GPSData(cS,cW);
var cR=cV;
var cU=this.trackGui.watchee.getBuddyManager().getBuddyOrMyself(cR);

if(cU!=null&&cU.hasPermission(net.watchee.BuddyPermissionTO.PERMISSION_GPS)){this.trackGui.watchee.getMapManager().showXsmsInfoWindow(cw,cT);
}},this);
this.fireEvent(bg);
return cy;
},clearXsmsPane:function(){if(org.xmlBlaster.util.isDefined(this.xsmsInboxFrame)){this.xsmsInboxFrame.removeAll();
}
if(org.xmlBlaster.util.isDefined(this.writeTextArea)){this.writeTextArea.setValue(this.defaultText);
}
if(org.xmlBlaster.util.isDefined(this.selectBoxDestinations)){this.selectBoxDestinations.removeAll();
}}},destruct:function(){this._disposeFields();
this._disposeObjects();
}});
})();
(function(){var t="pictureId",s="",r="track.xsmsphoto.PhotoTab",q="click",p="update",o=" (",n="Photo",m="i",k="  ",j=" GMT)",c="qx.event.type.Event",h="tab title",g="t",b="addGps",a=": ",f="100%",d="16/devices/camera-photo.png";
qx.Class.define(r,{extend:track.util.EnhancedTabViewPage,include:[qx.locale.MTranslation],construct:function(u){track.util.EnhancedTabViewPage.call(this,this.trc(h,n),xbGetQxIcon(d));
this.setLayout(new qx.ui.layout.VBox(0));
this.xsmsPhoto=u;
this.trackGui=this.xsmsPhoto.trackGui;
this.log=this.trackGui.getLogger();
this.eventPagePhotoVBox=new qx.ui.container.Composite(new qx.ui.layout.VBox(8));
var scroll=new qx.ui.container.Scroll();
scroll.add(this.eventPagePhotoVBox);
this.add(scroll,{height:f});
},events:{"update":c},members:{initializePhotoPage:function(){if(this.trackGui.watchee==null)return;
this.trackGui.watchee.getEventManager().addListener(b,function(v){this.addPhotoToPhotoGallery(v.getData().track,v.getData().gpsData);
},this);
},addPhotoToPhotoGallery:function(w,x){this.info("addPhotoToGallery ");

if(this.trackGui.watchee==null)return;
var E=x.getPictureId(null);

if(E==null)return null;
var y=x.getInfo(m,s)+k+x.getInfo(g,s);

if(y.length==0&&w!=null)y=w.getTrackName();
var C=net.watchee.toPictureInfo(this.trackGui.watchee,x);

if(C==null)return null;

if(this.findPictureIdInGroupBox(E)==E){return null;
}var F=(w==null)?s:w.getDeviceId();
var A=F+a+y+o+x.getTime()+j;
var B=new qx.ui.groupbox.GroupBox(A);
B.setUserData(t,C.pictureId);
B.setLayout(new qx.ui.layout.Basic());
var D=new qx.ui.basic.Image(C.url);
B.add(D);
D.setUserData(t,C.pictureId);
D.addListener(q,function(e){if(this.trackGui.watchee==null)return;
var G=true;
this.trackGui.watchee.getMapManager().updateMap(w,x,G);
},this);
this.eventPagePhotoVBox.add(B);
var z=50;

if(this.eventPagePhotoVBox.getChildren().length>z)this.eventPagePhotoVBox.removeAt(0);
this.fireEvent(p);
return C;
},findPictureIdInGroupBox:function(H){var I=this.findGroupBox(H);

if(I==null)return 0;
return I.getUserData(t);
},findGroupBox:function(J){if(J==null)return null;
var L=this.eventPagePhotoVBox.getChildren();

for(var i=0,l=L.length;i<l;i++){var K=L[i];
var M=K.getUserData(t);

if(M==J){return K;
}}return null;
},removePhotoFromPhotoGallery:function(N){var Q=N.getPictureId(null);

if(Q==null)return 0;
var O=this.eventPagePhotoVBox.getChildren();

for(var i=0,l=O.length;i<l;i++){var P=O[i];
var R=P.getUserData(t);

if(R==Q){this.eventPagePhotoVBox.removeAt(i);
return Q;
}}return 0;
},clearPhotoPage:function(){if(org.xmlBlaster.util.isDefined(this.eventPagePhotoVBox)){this.eventPagePhotoVBox.removeAll();
}}},destruct:function(){this._disposeFields();
this._disposeObjects();
}});
})();
(function(){var i="100%",h="track.xsmsphoto.InfoTab",g="16/info_16.png",f="/iframelb/index.html",d="embeddedHtmlFrameLeftBottom.url",c="load",b="Info ",a="tabTitleInfo";
qx.Class.define(h,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(j){qx.core.Object.call(this);
this.xsmsPhoto=j;
this.trackGui=this.xsmsPhoto.trackGui;
this.log=this.trackGui.getLogger();
this.eventTabInfo=null;
},members:{createTab:function(k){this.eventTabInfo=new qx.ui.tabview.Page(this.trc(a,b),xbGetIcon(g));
var m=new qx.ui.layout.Canvas();
this.eventTabInfo.setLayout(m);
this.embeddedFramelb=new qx.ui.embed.ThemedIframe();
this.eventTabInfo.add(this.embeddedFramelb,{width:i,height:i});
this.embeddedFramelb.addListener(c,function(e){this.debug("Loaded: "+this.getSource());
});
var l=xbProperties.getStr(d,f);
l=this.trackGui.prepareUrlForLocale(l);
this.embeddedFramelb.setSource(l);
this.embeddedFramelb.setEnabled(false);
return this.eventTabInfo;
},getPage:function(){return this.eventTabInfo;
},dummy:function(){}},destruct:function(){this._disposeFields();
this._disposeObjects();
}});
})();
(function(){var l="info text",k="accountInfoTab.show",j="track.pref.PreferenceWindow",i="Configure general settings",h="images/16/logo_16.png",g="32/actions/system-run.png",f="homeViewTab.show",e="Configure my settings",d="passwordTab.show",c="button caption";
var a=200;
var b=350;
qx.Class.define(j,{extend:track.util.WindowWithHelpIcon,construct:function(m){track.util.WindowWithHelpIcon.call(this);
this.setLayout(new qx.ui.layout.Canvas());
this.setCaption(this.trc(c,e));
this.setIcon(h);
this.trackGui=m;
this.ME="PreferenceWindow.js";
this.log=this.trackGui.getLogger();
},members:{getPreferenceWindowTop:function(){if(a>300)a=300;
a+=25;
return a;
},getPreferenceWindowLeft:function(){if(b>450)b=350;
b+=25;
return b;
},createPreferenceWindow:function(){this.moveTo(this.getPreferenceWindowLeft(),this.getPreferenceWindowTop());
var o=(this.trc(l,i));
var n=new qx.ui.basic.Atom(o,xbGetQxIcon(g));
n.setRich(true);
this.add(n,{top:4,left:4});
var p=new track.util.EnhancedTabView();

if(xbProperties.getBoolean(d,true)){this.passwordTab=new track.pref.PasswordTab(this);
this.passwordTab.createTab(p);
}
if(xbProperties.getBoolean(f,true)){this.mapTab=new track.pref.HomeViewTab(this);
this.mapTab.createTab(p);
}
if(xbProperties.getBoolean(k,true)){this.accountInfoTab=new track.pref.AccountInfoTab(this);
this.accountInfoTab.createTab(p);
}this.add(p,{left:10,top:52,right:10,bottom:10});
this.trackGui.getMyRoot().add(this);
this.open();
},destroyPopup:function(){if(this.trackGui==null)return;
this.trackGui.getMyRoot().remove(this);
this.close();
this.trackGui=null;
this.log=null;
}},destruct:function(){this.destroyPopup();
}});
})();
(function(){var m="infoMsgBox",l="info box",k="middle",j="right",h="info text",g="left",f="input info",d="groupbox title",c="link",b="button",bj="execute",bi="22/actions/dialog-close.png",bh="privacyUrl",bg="Delete Account",bf="Label",be="Legal",bd="askMsgBox",bc="green",bb="track.pref.PasswordTab",ba="Password:",t="<a href='",u="You have not permission to destroy me",r="22/actions/dialog-ok.png",s="Account can't be removed for public users",p="32/apps/preferences-security.png",q="Company Information",n="Privacy Policy",o="<b>Good Bye From %1!</b><br /><br /><b>The account %2 is destroyed</b><br />Thanks for having used %1.",x="You have not permission to change the password",y="You new password must be at least 5 characters long",G="Change Password",E="Delete",O="askMgsBox title",J="Destroying your account ...<p>Note: This can take half an hour depending on the amount of data you have</p><br />Please be patient ...",V="tab title",T="Nothing destroyed, you are still a <i>%1</i> user",A="Terms",Y="Your old password is not correct",X="<b>Destroy %1</b>",W="Your 're-type'  password is different, please enter again",z="No password change for public users",C="Do you really want to destroy permanently your account <br /><b>%1</b>?",D="22/alarm/alarmShowRuleWindow.png",F="Your password is not correct",H="Re-type new password:",K="impressumUrl",Q="The account <b>%1</b> is NOT destroyed: %2",U="New password:",v="' target='_blank'><nobr>",w="32/status/security-high.png",B="Password / Account",N="22/emblems/emblem-important.png",M="agbUrl",L="DANGER (all data is destroyed)",S="passwordTab.enabled",R="Changing Password ...",I="Old password:",P="Submit",a="</nobr></a>";
qx.Class.define(bb,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(bk){qx.core.Object.call(this);
this.preferenceWindow=bk;
this.trackGui=this.preferenceWindow.trackGui;
this.ME="PasswordTab.js";
this.log=this.trackGui.getLogger();
},members:{createTab:function(bl){this.tabviewPage=new qx.ui.tabview.Page(this.trc(V,B),xbGetQxIcon(p));
var bn=new qx.ui.layout.VBox(10);
this.tabviewPage.setLayout(bn);
bl.add(this.tabviewPage);

if(this.trackGui.watchee==null)return;
var bm=this._createChangePasswordGroup();

if(bm!=null){this.tabviewPage.add(bm);
}var bo=this._createRemoveAccountGroup();

if(bo!=null){this.tabviewPage.add(bo);
}var bp=this._createLegalLinksGroup();

if(bp!=null){this.tabviewPage.add(bp);
}return this.tabviewPage;
},_createChangePasswordGroup:function(){if(this.trackGui.watchee.getAccountTO().isPublic()){return new qx.ui.basic.Label(this.trc(h,z));
}var bs=new qx.ui.groupbox.GroupBox(this.trc(d,G),xbGetQxIcon(w));
var br=new qx.ui.layout.Grid(6,4);
bs.setLayout(br);
br.setColumnAlign(0,g,k);
br.setColumnAlign(1,j,k);
var bq=new qx.ui.form.PasswordField();
bs.add(new qx.ui.basic.Label(this.trc(f,I)),{row:0,column:0});
bs.add(bq,{row:0,column:1});
var bv=new qx.ui.form.PasswordField();
bs.add(new qx.ui.basic.Label(this.trc(f,U)),{row:1,column:0});
bs.add(bv,{row:1,column:1});
var bu=new qx.ui.form.PasswordField();
bs.add(new qx.ui.basic.Label(this.trc(f,H)),{row:2,column:0});
bs.add(bu,{row:2,column:1});
var bt=new qx.ui.form.Button(this.trc(b,P),xbGetQxIcon(r));
bt.setAlignX(j);
bs.add(bt,{row:3,column:1});
bt.addListener(bj,function(e){if(this.trackGui.watchee==null)return;

if(!this.trackGui.getSessionProfile().hasPermissionForChangingPassword()){this.trackGui.infoMsgBox(this.trc(l,x));
return;
}
if(bq.getValue()!=this.trackGui.loginForm.passwordTextField.getValue()){this.trackGui.infoMsgBox(this.trc(l,Y));
return;
}
if(bv.getValue()!=bu.getValue()){this.trackGui.infoMsgBox(this.trc(l,W));
return;
}
if(bv.getValue().length<5){this.trackGui.infoMsgBox(this.trc(l,y));
return;
}this.trackGui.infoMsgBox(this.trc(l,R),1000);
var bw=this.trackGui.loginForm.getLoginTextFieldValue();
this.trackGui.sendChangePassword(bw,bq.getValue(),bv.getValue());
},this);

if(!this.trackGui.getSessionProfile().hasPermissionForChangingPassword()){bs.setEnabled(false);
}
if(!xbProperties.getBoolean(S,true)){bs.setEnabled(false);
}return bs;
},_createRemoveAccountGroup:function(){if(this.trackGui.watchee.getAccountTO().isPublic()){return new qx.ui.basic.Label(this.trc(h,s));
}var bA=new qx.ui.groupbox.GroupBox(this.trc(d,bg),xbGetQxIcon(N));
var by=new qx.ui.layout.Grid(6,4);
bA.setLayout(by);
by.setColumnAlign(0,g,k);
by.setColumnAlign(1,j,k);
var bz=new qx.ui.form.PasswordField();
bA.add(new qx.ui.basic.Label(this.trc(bf,ba)),{row:0,column:0});
bA.add(bz,{row:0,column:1});
var bB=this.trackGui.loginForm.getLoginTextFieldValue();
bA.add(new qx.ui.basic.Label(this.trc(h,L)),{row:1,column:0});
var bx=new qx.ui.form.Button(this.trc(b,X,bB),xbGetQxIcon(bi));
bx.setRich(true);
bx.setAlignX(j);
bA.add(bx,{row:1,column:1});
bx.addListener(bj,function(e){if(this.trackGui.watchee==null)return;

if(!this.trackGui.getSessionProfile().hasPermissionForDestroyAccount()){this.trackGui.infoMsgBox(this.trc(m,u));
return;
}
if(bz.getValue()!=this.trackGui.loginForm.passwordTextField.getValue()){this.trackGui.infoMsgBox(this.trc(m,F));
return;
}this.trackGui.askMsgBox(this.trc(O,E),this.trc(bd,C,bB),function(bC){if(bC){bx.setEnabled(false);
var bD=this.trackGui.infoMsgBox(this.trc(m,J));
this.trackGui.sendRemoveAccount(bB,bz.getValue(),function(bE,bF,bG){this.trackGui.getMsgBox().closeCurrentWindow();

if(bE.isException()){this.trackGui.errorMsgBox(this.trc(m,Q,bB,bE.getErrorHtmlMessage()));
}else{var bH=this.trackGui.getMyOemName();
this.trackGui.logout();
this.trackGui.infoMsgBox(this.trc(m,o,bH,bB));
}},this);
}else{this.trackGui.infoMsgBox(this.trc(m,T,this.trackGui.getMyOemName()),4000);
}},this);
},this);

if(!this.trackGui.getSessionProfile().hasPermissionForDestroyAccount()){bA.setEnabled(false);
}return bA;
},_createLegalLinksGroup:function(){var bO=new qx.ui.groupbox.GroupBox(this.trc(d,be),xbGetIcon(D));
var bK=new qx.ui.layout.Grid(6,4);
bK.setColumnAlign(0,g,k);
bO.setLayout(bK);
var bM=this.trackGui.getMyOemLink(bh,null,null);
var bI=this.trackGui.getMyOemLink(K,null,null);
var bL=this.trackGui.getMyOemLink(M,null,null);
var bJ=[];

if(bM!=null){bJ.push({url:bM,label:this.trc(c,n)});
}
if(bI!=null){bJ.push({url:bI,label:this.trc(c,q)});
}
if(bL!=null){bJ.push({url:bL,label:this.trc(c,A)});
}
if(bJ.length==0){return null;
}
for(var i=0;i<bJ.length;i++){data=bJ[i];
var bP=t+data.url+v+data.label+a;
var bN=new qx.ui.basic.Label(bP);
bN.setRich(true);
bN.setTextColor(bc);
bO.add(bN,{row:i,column:0});
}return bO;
}},destruct:function(){this._disposeFields();
this._disposeObjects();
}});
})();
(function(){var k="",j="label",i="infoMsgBox",h="button",g="<b>Create</b>",f="execute",d="New name",c="errorMsg",b="left",a="Customize home views",L="Home view",K="This home view name is too short",J="16/actions/dialog-ok.png",I="right",H="Latitude",G="The home view <b>%1</b> has been succesfully created",F="interval",E="The home view <b>%1</b> has been succesfully modified and renamed to <b>%2</b>",D="The home view <b>%1</b> has been modified",C="middle",r="Longitude",s="<b>Modify</b>",p="tab title",q="<b>Delete</b>",n="The home view <b>%1</b> has been deleted",o="appear",l="This home view name is too long",m="track.pref.HomeViewTab",t="homeViewTab.enabled",u="22/actions/go-home.png",x="Select home view",w="disappear",z="Zoom level",y="changeHomeView",B="22/places/user-trash.png",A="groupbox title",v="Change name";
qx.Class.define(m,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(M){qx.core.Object.call(this);
this.preferenceWindow=M;
this.trackGui=this.preferenceWindow.trackGui;
this.log=this.trackGui.getLogger();
this.currHomeView=null;
this.timer=new qx.event.Timer(1000);
this.timer.addListener(F,function(e){if(this.trackGui.watchee==null)return;
var N=this.trackGui.watchee.getMapManager().getCenterCoordinates();
var O=this.trackGui.watchee.getMapManager().getZoomFactor();
this.latTextField.setValue(N.getLat()+k);
this.lonTextField.setValue(N.getLng()+k);
this.zoomTextField.setValue(O+k);
},this);
this.modeNew=true;
},members:{createTab:function(P){this.tabviewPage=new qx.ui.tabview.Page(this.trc(p,L),xbGetQxIcon(u));
this.tabviewPage.setLayout(new qx.ui.layout.VBox(10));
P.add(this.tabviewPage);
this.tabviewPage.add(this.__ow());
this.tabviewPage.addListener(o,function(){this.timer.start();
},this);
this.tabviewPage.addListener(w,function(){this.timer.stop();
},this);
return this.tabviewPage;
},__ow:function(){var R=new qx.ui.groupbox.GroupBox(this.trc(A,a));
var Q=new qx.ui.layout.Grid(6,4);
R.setLayout(Q);
Q.setRowAlign(0,b,C);
var T=0;
this.homeViewSelectBox=new track.mainview.HomeViewSelectBox(this.trackGui);
this.homeViewSelectBox.setConfigMode();
this.homeViewSelectBox.updateItems();
var S=new qx.ui.basic.Label(this.trc(j,x));
R.add(S,{row:T,column:0});
R.add(this.homeViewSelectBox,{row:T,column:1});
T++;
this.nameTextField=new qx.ui.form.TextField(k);
this.nameLabel=new qx.ui.basic.Label(this.trc(j,d));
R.add(this.nameLabel,{row:T,column:0});
R.add(this.nameTextField,{row:T,column:1});
T++;
this.latTextField=new qx.ui.form.TextField(k);
var S=new qx.ui.basic.Label(this.trc(j,H));
R.add(S,{row:T,column:0});
R.add(this.latTextField,{row:T,column:1});
this.latTextField.setEnabled(false);
T++;
this.lonTextField=new qx.ui.form.TextField(k);
var S=new qx.ui.basic.Label(this.trc(j,r));
R.add(S,{row:T,column:0});
R.add(this.lonTextField,{row:T,column:1});
this.lonTextField.setEnabled(false);
T++;
this.zoomTextField=new qx.ui.form.TextField(k);
var S=new qx.ui.basic.Label(this.trc(j,z));
R.add(S,{row:T,column:0});
R.add(this.zoomTextField,{row:T,column:1});
this.zoomTextField.setEnabled(false);
T++;
this.homeViewSelectBox.addListener(y,function(U){this.currHomeView=U.getData();
this._setModeNew(this.currHomeView==this.homeViewSelectBox.newHomeView);
},this);
this.deleteButton=new qx.ui.form.Button(this.trc(h,q),xbGetQxIcon(B));

with(this.deleteButton){setWidth(160);
setAlignX(b);
setRich(true);
}R.add(this.deleteButton,{row:T,column:0});
this.deleteButton.setEnabled(false);
this.deleteButton.addListener(f,function(e){if(this.trackGui.watchee==null)return;
this._removeCurrHomeView();
this._updateHomeViews();
},this);
this.submitButton=new qx.ui.form.Button(this.trc(h,g),xbGetQxIcon(J));

with(this.submitButton){setWidth(160);
setAlignX(I);
setRich(true);
}R.add(this.submitButton,{row:T,column:1});
this.submitButton.addListener(f,function(e){if(this.trackGui.watchee==null)return;

if(this.modeNew){this._addNewHomeView();
}else{this._changeCurrHomeView();
}this._updateHomeViews();
},this);

if(!xbProperties.getBoolean(t,true)){R.setEnabled(false);
}return R;
},_setModeNew:function(V){if(V){this.modeNew=true;
this.deleteButton.setEnabled(false);
this.submitButton.setLabel(this.trc(h,g));
this.nameTextField.setValue(k);
this.nameLabel.setValue(this.trc(j,d));
}else{this.modeNew=false;
this.deleteButton.setEnabled(true);
this.submitButton.setLabel(this.trc(h,s));
this.nameTextField.setValue(this.currHomeView.getName());
this.nameLabel.setValue(this.trc(j,v));
this.latTextField.setValue(this.currHomeView.getLat()+k);
this.lonTextField.setValue(this.currHomeView.getLon()+k);
this.zoomTextField.setValue(this.currHomeView.getZoom()+k);
}},_removeCurrHomeView:function(){var name=this.currHomeView.getName();
this.trackGui.getMyAccountTO().getHomeViewsData().remove(name);
var W=net.watchee.HomeView.KEY_HOMEVIEW_PREFIX+this.currHomeView.getName();
this.trackGui.sendChangeAccountProperty(this.trackGui.getMyLoginName(),W,k,function(){this.trackGui.infoMsgBox(this.trc(i,n,name));
this._setModeNew(true);
},this);
},_changeCurrHomeView:function(){var be=this.currHomeView;
var bf=this._getNewHomeView();

if(bf!=null){var bb=be.getName();
var Y=bf.getName();
var X=this.trc(i,E,bb,Y);

if(bb==Y)X=this.trc(i,D,bb);
var ba=this.trackGui.getMyAccountTO().getHomeViewsData();
ba.remove(bb);
var bc=net.watchee.HomeView.KEY_HOMEVIEW_PREFIX+bb;
this.trackGui.sendChangeAccountProperty(this.trackGui.getMyLoginName(),bc,k);
ba.add(bf);
var bc=net.watchee.HomeView.KEY_HOMEVIEW_PREFIX+Y;
var bd=bf.toCSV();
this.trackGui.sendChangeAccountProperty(this.trackGui.getMyLoginName(),bc,bd,function(){this.trackGui.infoMsgBox(X);
this._setModeNew(true);
},this);
}},_addNewHomeView:function(){var bi=this._getNewHomeView();

if(bi==null)return;
var name=bi.getName();

if(bi!=null){this.trackGui.getMyAccountTO().getHomeViewsData().add(bi);
var bh=net.watchee.HomeView.KEY_HOMEVIEW_PREFIX+name;
var bg=bi.toCSV();
this.trackGui.sendChangeAccountProperty(this.trackGui.getMyLoginName(),bh,bg,function(){this.trackGui.infoMsgBox(this.trc(i,G,name));
this._setModeNew(true);
},this);
return true;
}},_getNewHomeView:function(){var name=this.nameTextField.getValue();

if(name==null||name.length<2){this.trackGui.errorMsgBox(this.trc(c,K));
return null;
}
if(name.length>20){this.trackGui.errorMsgBox(this.trc(c,l));
return null;
}var bj=this.latTextField.getValue();
var bl=this.lonTextField.getValue();
var bm=this.zoomTextField.getValue();
var bk=new net.watchee.HomeView(name,bj,bl,bm);
return bk;
},_updateHomeViews:function(){this.homeViewSelectBox.updateItems();
this.trackGui.menuBar.homeViewSelectBox.updateItems();
}},destruct:function(){this._disposeFields();
this._disposeObjects();
}});
})();
(function(){var o="",n="label",m="Maximum SMS per month",l="Used SMS this month (at last login)",k="Account Info",j="Your contract expires at",i="accountAccountInfoTab.enabled",h="Contract Info",g="track.pref.AccountInfoTab",f="groupbox title",c="left",e="22/status/dialog-information.png",d="middle",b="Contract type",a="tab title";
qx.Class.define(g,{extend:qx.core.Object,include:[qx.locale.MTranslation],construct:function(p){qx.core.Object.call(this);
this.preferenceWindow=p;
this.trackGui=this.preferenceWindow.trackGui;
this.log=this.trackGui.getLogger();
},members:{createTab:function(q){this.tabviewPage=new qx.ui.tabview.Page(this.trc(a,k),xbGetQxIcon(e));
this.tabviewPage.setLayout(new qx.ui.layout.VBox(10));
q.add(this.tabviewPage);
this.tabviewPage.add(this.__ow());
return this.tabviewPage;
},__ow:function(){var t=new qx.ui.groupbox.GroupBox(this.trc(f,h));
var r=new qx.ui.layout.Grid(6,4);
t.setLayout(r);
r.setRowAlign(0,c,d);
var v=0;
this.permissionTemplateNameLabel=new qx.ui.basic.Label(this.trc(n,b));
this.permissionTemplateNameTextField=new qx.ui.form.TextField(o);
t.add(this.permissionTemplateNameLabel,{row:v,column:0});
t.add(this.permissionTemplateNameTextField,{row:v,column:1});
this.permissionTemplateNameTextField.setEnabled(false);
v++;
this.contractExpiresLabel=new qx.ui.basic.Label(this.trc(n,j));
this.contractExpiresTextField=new qx.ui.form.TextField(o);
t.add(this.contractExpiresLabel,{row:v,column:0});
t.add(this.contractExpiresTextField,{row:v,column:1});
this.contractExpiresTextField.setEnabled(false);
v++;
this.smsUsedTextField=new qx.ui.form.TextField(o);
var u=new qx.ui.basic.Label(this.trc(n,l));
t.add(u,{row:v,column:0});
t.add(this.smsUsedTextField,{row:v,column:1});
this.smsUsedTextField.setEnabled(false);
v++;
this.smsMaxTextField=new qx.ui.form.TextField(o);
var u=new qx.ui.basic.Label(this.trc(n,m));
t.add(u,{row:v,column:0});
t.add(this.smsMaxTextField,{row:v,column:1});
this.smsMaxTextField.setEnabled(false);
v++;

if(!xbProperties.getBoolean(i,true)){t.setEnabled(false);
}var s=this.trackGui.getMyAccountTO();
this._initializeValues(s);
return t;
},_resetValues:function(){this.permissionTemplateNameTextField.setValue(o);
this.contractExpiresTextField.setValue(o);
this.smsUsedTextField.setValue(o);
this.smsMaxTextField.setValue(o);
},_initializeValues:function(w){var w=w||null;

if(w==null){this._resetValues();
return;
}this.permissionTemplateNameTextField.setValue(w.getPermissionTemplateStrNice());
this.contractExpiresTextField.setValue(w.getEndDateStr());
this.smsUsedTextField.setValue(o+w.getCurrentMonthlySms());
this.smsMaxTextField.setValue(o+w.getMaxMonthlySms());
}},destruct:function(){this._disposeFields();
this._disposeObjects();
}});
})();
(function(){var l=": ",k="Summary: (",j="qx.dev.ObjectSummary",h="\n",g=" Objects)\n\n",f=")\r\n",e=" (",d=" Objects)\r\n\r\n",c=", ";
qx.Class.define(j,{statics:{getInfo:function(){var m={};
var t=0;
var n;
var p=qx.core.ObjectRegistry.getRegistry();

for(var q in p){n=p[q];

if(n&&n.isDisposed()===false){if(m[n.classname]==null){m[n.classname]=1;
}else{m[n.classname]++;
}t++;
}}var s=[];

for(var o in m){s.push({classname:o,number:m[o]});
}s.sort(function(a,b){return b.number-a.number;
});
var r=k+t+g;

for(var i=0;i<s.length;i++){r+=s[i].number+l+s[i].classname+h;
}return r;
},getNewObjects:function(){var v={};
var F=0;
var w;
var A=qx.core.ObjectRegistry.getRegistry();
var y={};
var E;

for(var B in A){w=A[B];

if(w&&w.__disposed===false){var z=w.classname;

if(v[z]==null){v[z]=1;
}else{v[z]++;
}E=y[z];

if(E==null){E=y[z]=new Array();
}E[E.length]=w.toHashCode();
F++;
}}
if(!this._m_dObjectList){this._m_dObjectList={};
}var u={};

for(var z in v){if(!(z in this._m_dObjectList)){this._m_dObjectList[z]=0;
}
if(this._m_dObjectList[z]>=0&&this._m_dObjectList[z]<v[z]){u[z]=v[z]-this._m_dObjectList[z];
}}this._m_dObjectList=v;
var D=[];

for(var x in u){D.push({classname:x,number:u[x],aHashCode:y[x]});
}D.sort(function(a,b){return b.number-a.number;
});
var C=k+F+d;

for(var i=0;i<D.length;i++){C+=D[i].number+l+D[i].classname+e+D[i].aHashCode.join(c)+f;
}return C;
}}});
})();
(function(){var k="</td>",j="<tr>",i="</tr>",h="MapInfo",g="<td class='gpsMapValue'>",f="",e="<td class='gpsMapLabel'>",d="</td></tr>",c="</a>",a="<a href='",M="<tr><td colspan='2'>",L="&z=12' target='_blank'>",K="</th>",J="containerId",I="<table class='gpsMapLabel' width='300'>",H="Date:",G="track.map.MapPoiInfoDrawer",F=" / ",E="' alt='true'>",D="16/tick_16.png",r="Time:",s="type",p="</thead>",q="<img src='",n="' width='300'/></a>",o="://",l="Link to goo
