aboutsummaryrefslogtreecommitdiffstats
path: root/lib/caldav/request/errors.js
diff options
context:
space:
mode:
Diffstat (limited to 'lib/caldav/request/errors.js')
-rw-r--r--lib/caldav/request/errors.js49
1 files changed, 49 insertions, 0 deletions
diff --git a/lib/caldav/request/errors.js b/lib/caldav/request/errors.js
new file mode 100644
index 0000000..c3c166e
--- /dev/null
+++ b/lib/caldav/request/errors.js
@@ -0,0 +1,49 @@
+(function(module, ns) {
+
+ function CaldavHttpError(code) {
+ this.code = code;
+ var message;
+ switch(this.code) {
+ case 401:
+ message = 'Wrong username or/and password';
+ break;
+ case 404:
+ message = 'Url not found';
+ break;
+ case 500:
+ message = 'Server error';
+ break;
+ default:
+ message = this.code;
+ }
+
+ Error.call(this, message);
+ }
+ CaldavHttpError.prototype = {
+ __proto__: Error.prototype,
+ constructor: CaldavHttpError
+ }
+
+ // Unauthenticated error for
+ // Google Calendar
+ function UnauthenticatedError() {
+ var message = "Wrong username or/and password";
+ Error.call(this, message);
+ }
+
+ UnauthenticatedError.prototype = {
+ __proto__: Error.prototype,
+ constructor: UnauthenticatedError
+ }
+
+ module.exports = {
+ CaldavHttpError: CaldavHttpError,
+ UnauthenticatedError: UnauthenticatedError
+ };
+
+}.apply(
+ this,
+ (this.Caldav) ?
+ [Caldav('request/errors'), Caldav] :
+ [module, require('../caldav')]
+));