text: if (!PhoneGap.hasResource("notification")) {
  	PhoneGap.addResource("notification");
  
  /**
   * This class provides access to notifications on the device.
   */
  Notification = function() {
  };
  
  /**
   * Open a native alert dialog, with a customizable title and button text.
   *
   * @param {String} message              Message to print in the body of the alert
   * @param {Function} completeCallback   The callback that is called when user clicks on a button.
   * @param {String} title                Title of the alert dialog (default: Alert)
   * @param {String} buttonLabel          Label of the close button (default: OK)
   */
  Notification.prototype.alert = function(message, completeCallback, title, buttonLabel) {
      var _title = (title || "Alert");
      var _buttonLabel = (buttonLabel || "OK");
      PhoneGap.exec(completeCallback, null, "Notification", "alert", [message,{ "title": _title, "buttonLabel": _buttonLabel}]);
  };
  
  /**
   * Open a native confirm dialog, with a customizable title and button text.
   * The result that the user selects is returned to the result callback.
   *
   * @param {String} message              Message to print in the body of the alert
   * @param {Function} resultCallback     The callback that is called when user clicks on a button.
   * @param {String} title                Title of the alert dialog (default: Confirm)
   * @param {String} buttonLabels         Comma separated list of the labels of the buttons (default: 'OK,Cancel')
   */
  Notification.prototype.confirm = function(message, resultCallback, title, buttonLabels) {
      var _title = (title || "Confirm");
      var _buttonLabels = (buttonLabels || "OK,Cancel");
      this.alert(message, resultCallback, _title, _buttonLabels);
  };
  /**
   * Start spinning the activity indicator on the statusbar
   */
  Notification.prototype.activityStart = function() {
      PhoneGap.exec(null, null, "Notification", "activityStart", []);
  };
  
  /**
   * Stop spinning the activity indicator on the statusbar, if it's currently spinning
   */
  Notification.prototype.activityStop = function() {
      PhoneGap.exec(null, null, "Notification", "activityStop", []);
  };
  
  // iPhone only
  Notification.prototype.loadingStart = function(options) {
      PhoneGap.exec(null, null, "Notification","loadingStart", [options]);
  };
  // iPhone only
  Notification.prototype.loadingStop = function() {
      PhoneGap.exec(null, null, "Notification","loadingStop", []);
  };
  /**
   * Causes the device to blink a status LED.
   * @param {Integer} count The number of blinks.
   * @param {String} colour The colour of the light.
   */
  Notification.prototype.blink = function(count, colour) {
  // NOT IMPLEMENTED	
  };
  
  Notification.prototype.vibrate = function(mills) {
  	PhoneGap.exec(null, null, "Notification", "vibrate", []);
  };
  
  Notification.prototype.beep = function(count, volume) {
  	// No Volume yet for the iphone interface
  	// We can use a canned beep sound and call that
  	new Media('beep.wav').play();
  };
  
  PhoneGap.addConstructor(function() {
      if (typeof navigator.notification == "undefined") navigator.notification = new Notification();
  });
  };
  