Subversion Repositories HomeAutomation

Rev

Rev 1214 | Blame | Compare with Previous | Last modification | View Log | SVN | RSS feed

  1.  
  2. function ExchangeCalendar(callback)
  3. {
  4.     this.myHTTP = new HTTP();
  5.     this.myCallback = callback;
  6. }
  7.  
  8. ExchangeCalendar.prototype.myHTTP = null;
  9. ExchangeCalendar.prototype.myCallback = null;
  10.  
  11. ExchangeCalendar.prototype.lookup = function(calendarShortName)
  12. {
  13.     var self = this;
  14. //log("\n");
  15. //log("ExchangeCalendar: before lookup\n");
  16.     this.myHTTP.request(function(result, header, content) { self.httpCallback(result, header, content); },
  17.                         "dev.qrtech.se/exchangeIntegration/exchange.php?function=getMeetingsRestOfDay&shortname=" + calendarShortName);
  18. //log("ExchangeCalendar: called lookup\n");
  19. }
  20.  
  21. ExchangeCalendar.prototype.book = function(calendarShortName, bookFrom, bookTo)
  22. {
  23.     var self = this;
  24.     this.myHTTP.request(function(result, header, content) { self.httpCallback(result, header, content); },
  25.                         "dev.qrtech.se/exchangeIntegration/exchange.php?function=bookMeeting&shortname="+calendarShortName+"&from="+bookFrom+"&to="+bookTo);
  26. }
  27.  
  28. ExchangeCalendar.prototype.httpCallback = function(result, header, content)
  29. {
  30. //log("ExchangeCalendar: httpCallback \n\n");
  31. //return;
  32.     var data = null;
  33.     var shortname = "";
  34.     if (result.indexOf("200 OK") != -1)
  35.     {
  36.         //log("ExchangeCalendar: got data : \n" + content + "\n");
  37.         /*var data = !(/[^,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t]/.test(
  38.         content.replace(/"(\\.|[^"\\])*"/g, ''))) &&
  39.         eval('(' + content + ')');
  40.         */
  41.         var data = eval('(' + content + ')');
  42.        
  43.         shortname = data['shortname'];
  44.         //log("ExchangeCalendar: did eval go right? \n"+data.meetings[0]["organizer"]+"\n");
  45.     }
  46.     else
  47.     {
  48.         log("ExchangeCalendar: Failed to do calendar lookup, result was: " + result + "\n");
  49.     }
  50.    
  51.     this.myCallback(shortname, data);
  52. }
  53.  
  54.