212 lines
6.9 KiB
JavaScript
212 lines
6.9 KiB
JavaScript
/*
|
|
|
|
Jappix - An open social platform
|
|
These are the constants JS scripts for Jappix
|
|
|
|
-------------------------------------------------
|
|
|
|
License: AGPL
|
|
Authors: Stefan Strigler, Vanaryon
|
|
Last revision: 26/08/11
|
|
|
|
*/
|
|
|
|
// XMPP XMLNS attributes
|
|
var NS_PROTOCOL = 'http://jabber.org/protocol/';
|
|
var NS_FEATURES = 'http://jabber.org/features/';
|
|
var NS_CLIENT = 'jabber:client';
|
|
var NS_IQ = 'jabber:iq:';
|
|
var NS_X = 'jabber:x:';
|
|
var NS_IETF = 'urn:ietf:params:xml:ns:xmpp-';
|
|
var NS_XMPP = 'urn:xmpp:';
|
|
|
|
var NS_STORAGE = 'storage:';
|
|
var NS_BOOKMARKS = NS_STORAGE + 'bookmarks';
|
|
var NS_ROSTERNOTES = NS_STORAGE + 'rosternotes';
|
|
|
|
var NS_JAPPIX = 'jappix:';
|
|
var NS_INBOX = NS_JAPPIX + 'inbox';
|
|
var NS_OPTIONS = NS_JAPPIX + 'options';
|
|
|
|
var NS_DISCO_ITEMS = NS_PROTOCOL + 'disco#items';
|
|
var NS_DISCO_INFO = NS_PROTOCOL + 'disco#info';
|
|
var NS_VCARD = 'vcard-temp';
|
|
var NS_VCARD_P = NS_VCARD + ':x:update';
|
|
var NS_AUTH = NS_IQ + 'auth';
|
|
var NS_AUTH_ERROR = NS_IQ + 'auth:error';
|
|
var NS_REGISTER = NS_IQ + 'register';
|
|
var NS_SEARCH = NS_IQ + 'search';
|
|
var NS_ROSTER = NS_IQ + 'roster';
|
|
var NS_PRIVACY = NS_IQ + 'privacy';
|
|
var NS_PRIVATE = NS_IQ + 'private';
|
|
var NS_VERSION = NS_IQ + 'version';
|
|
var NS_TIME = NS_IQ + 'time';
|
|
var NS_LAST = NS_IQ + 'last';
|
|
var NS_IQDATA = NS_IQ + 'data';
|
|
var NS_XDATA = NS_X + 'data';
|
|
var NS_IQOOB = NS_IQ + 'oob';
|
|
var NS_XOOB = NS_X + 'oob';
|
|
var NS_DELAY = NS_X + 'delay';
|
|
var NS_EXPIRE = NS_X + 'expire';
|
|
var NS_EVENT = NS_X + 'event';
|
|
var NS_XCONFERENCE = NS_X + 'conference';
|
|
var NS_STATS = NS_PROTOCOL + 'stats';
|
|
var NS_MUC = NS_PROTOCOL + 'muc';
|
|
var NS_MUC_USER = NS_MUC + '#user';
|
|
var NS_MUC_ADMIN = NS_MUC + '#admin';
|
|
var NS_MUC_OWNER = NS_MUC + '#owner';
|
|
var NS_MUC_CONFIG = NS_MUC + '#roomconfig';
|
|
var NS_PUBSUB = NS_PROTOCOL + 'pubsub';
|
|
var NS_PUBSUB_EVENT = NS_PUBSUB + '#event';
|
|
var NS_PUBSUB_OWNER = NS_PUBSUB + '#owner';
|
|
var NS_PUBSUB_NMI = NS_PUBSUB + '#node-meta-info';
|
|
var NS_PUBSUB_NC = NS_PUBSUB + '#node_config';
|
|
var NS_PUBSUB_RI = NS_PUBSUB + '#retrieve-items';
|
|
var NS_COMMANDS = NS_PROTOCOL + 'commands';
|
|
var NS_BOSH = NS_PROTOCOL + 'httpbind';
|
|
var NS_STREAM = 'http://etherx.jabber.org/streams';
|
|
var NS_URN_TIME = NS_XMPP + 'time';
|
|
var NS_URN_PING = NS_XMPP + 'ping';
|
|
var NS_URN_ADATA = NS_XMPP + 'avatar:data';
|
|
var NS_URN_AMETA = NS_XMPP + 'avatar:metadata';
|
|
var NS_URN_MBLOG = NS_XMPP + 'microblog:0';
|
|
var NS_URN_INBOX = NS_XMPP + 'inbox';
|
|
var NS_URN_ARCHIVE = NS_XMPP + 'archive';
|
|
var NS_URN_AR_PREF = NS_URN_ARCHIVE + ':pref';
|
|
var NS_URN_AR_AUTO = NS_URN_ARCHIVE + ':auto';
|
|
var NS_URN_AR_MANUAL = NS_URN_ARCHIVE + ':manual';
|
|
var NS_URN_AR_MANAGE = NS_URN_ARCHIVE + ':manage';
|
|
var NS_URN_DELAY = NS_XMPP + 'delay';
|
|
var NS_URN_RECEIPTS = NS_XMPP + 'receipts';
|
|
var NS_RSM = NS_PROTOCOL + 'rsm';
|
|
var NS_IPV6 = 'ipv6';
|
|
var NS_XHTML = 'http://www.w3.org/1999/xhtml';
|
|
var NS_XHTML_IM = NS_PROTOCOL + 'xhtml-im';
|
|
var NS_CHATSTATES = NS_PROTOCOL + 'chatstates';
|
|
var NS_HTTP_AUTH = NS_PROTOCOL + 'http-auth';
|
|
var NS_ROSTERX = NS_PROTOCOL + 'rosterx';
|
|
var NS_MOOD = NS_PROTOCOL + 'mood';
|
|
var NS_ACTIVITY = NS_PROTOCOL + 'activity';
|
|
var NS_TUNE = NS_PROTOCOL + 'tune';
|
|
var NS_GEOLOC = NS_PROTOCOL + 'geoloc';
|
|
var NS_NICK = NS_PROTOCOL + 'nick';
|
|
var NS_NOTIFY = '+notify';
|
|
var NS_CAPS = NS_PROTOCOL + 'caps';
|
|
var NS_ATOM = 'http://www.w3.org/2005/Atom';
|
|
|
|
var NS_STANZAS = NS_IETF + 'stanzas';
|
|
var NS_STREAMS = NS_IETF + 'streams';
|
|
|
|
var NS_TLS = NS_IETF + 'tls';
|
|
var NS_SASL = NS_IETF + 'sasl';
|
|
var NS_SESSION = NS_IETF + 'session';
|
|
var NS_BIND = NS_IETF + 'bind';
|
|
|
|
var NS_FEATURE_IQAUTH = NS_FEATURES + 'iq-auth';
|
|
var NS_FEATURE_IQREGISTER = NS_FEATURES + 'iq-register';
|
|
var NS_FEATURE_COMPRESS = NS_FEATURES + 'compress';
|
|
|
|
var NS_COMPRESS = NS_PROTOCOL + 'compress';
|
|
|
|
// Available locales
|
|
var LOCALES_AVAILABLE_ID = new Array();
|
|
var LOCALES_AVAILABLE_NAMES = new Array();
|
|
|
|
// XML lang
|
|
var XML_LANG = null;
|
|
|
|
// Jappix parameters
|
|
var JAPPIX_STATIC = null;
|
|
var JAPPIX_VERSION = null;
|
|
var JAPPIX_MAX_FILE_SIZE = null;
|
|
var JAPPIX_MAX_UPLOAD = null;
|
|
|
|
// Jappix main configuration
|
|
var SERVICE_NAME = null;
|
|
var SERVICE_DESC = null;
|
|
var JAPPIX_RESOURCE = null;
|
|
var LOCK_HOST = null;
|
|
var ANONYMOUS = null;
|
|
var REGISTRATION = null;
|
|
var BOSH_PROXY = null;
|
|
var MANAGER_LINK = null;
|
|
var GROUPCHATS_JOIN = null;
|
|
var ENCRYPTION = null;
|
|
var HTTPS_STORAGE = null;
|
|
var HTTPS_FORCE = null;
|
|
var COMPRESSION = null;
|
|
var MULTI_FILES = null;
|
|
var DEVELOPER = null;
|
|
|
|
// Jappix hosts configuration
|
|
var HOST_MAIN = null;
|
|
var HOST_MUC = null;
|
|
var HOST_PUBSUB = null;
|
|
var HOST_VJUD = null;
|
|
var HOST_ANONYMOUS = null;
|
|
var HOST_BOSH = null;
|
|
var HOST_BOSH_MAIN = null;
|
|
var HOST_BOSH_MINI = null;
|
|
var HOST_STATIC = null;
|
|
var HOST_UPLOAD = null;
|
|
|
|
// Anonymous mode
|
|
var ANONYMOUS_ROOM = null;
|
|
var ANONYMOUS_NICK = null;
|
|
|
|
// Node parameters
|
|
var JAPPIX_LOCATION = getJappixLocation();
|
|
|
|
// XMPP error stanzas
|
|
function STANZA_ERROR(code, type, cond) {
|
|
if (window == this)
|
|
return new STANZA_ERROR(code, type, cond);
|
|
|
|
this.code = code;
|
|
this.type = type;
|
|
this.cond = cond;
|
|
}
|
|
|
|
var ERR_BAD_REQUEST =
|
|
STANZA_ERROR('400', 'modify', 'bad-request');
|
|
var ERR_CONFLICT =
|
|
STANZA_ERROR('409', 'cancel', 'conflict');
|
|
var ERR_FEATURE_NOT_IMPLEMENTED =
|
|
STANZA_ERROR('501', 'cancel', 'feature-not-implemented');
|
|
var ERR_FORBIDDEN =
|
|
STANZA_ERROR('403', 'auth', 'forbidden');
|
|
var ERR_GONE =
|
|
STANZA_ERROR('302', 'modify', 'gone');
|
|
var ERR_INTERNAL_SERVER_ERROR =
|
|
STANZA_ERROR('500', 'wait', 'internal-server-error');
|
|
var ERR_ITEM_NOT_FOUND =
|
|
STANZA_ERROR('404', 'cancel', 'item-not-found');
|
|
var ERR_JID_MALFORMED =
|
|
STANZA_ERROR('400', 'modify', 'jid-malformed');
|
|
var ERR_NOT_ACCEPTABLE =
|
|
STANZA_ERROR('406', 'modify', 'not-acceptable');
|
|
var ERR_NOT_ALLOWED =
|
|
STANZA_ERROR('405', 'cancel', 'not-allowed');
|
|
var ERR_NOT_AUTHORIZED =
|
|
STANZA_ERROR('401', 'auth', 'not-authorized');
|
|
var ERR_PAYMENT_REQUIRED =
|
|
STANZA_ERROR('402', 'auth', 'payment-required');
|
|
var ERR_RECIPIENT_UNAVAILABLE =
|
|
STANZA_ERROR('404', 'wait', 'recipient-unavailable');
|
|
var ERR_REDIRECT =
|
|
STANZA_ERROR('302', 'modify', 'redirect');
|
|
var ERR_REGISTRATION_REQUIRED =
|
|
STANZA_ERROR('407', 'auth', 'registration-required');
|
|
var ERR_REMOTE_SERVER_NOT_FOUND =
|
|
STANZA_ERROR('404', 'cancel', 'remote-server-not-found');
|
|
var ERR_REMOTE_SERVER_TIMEOUT =
|
|
STANZA_ERROR('504', 'wait', 'remote-server-timeout');
|
|
var ERR_RESOURCE_CONSTRAINT =
|
|
STANZA_ERROR('500', 'wait', 'resource-constraint');
|
|
var ERR_SERVICE_UNAVAILABLE =
|
|
STANZA_ERROR('503', 'cancel', 'service-unavailable');
|
|
var ERR_SUBSCRIPTION_REQUIRED =
|
|
STANZA_ERROR('407', 'auth', 'subscription-required');
|
|
var ERR_UNEXPECTED_REQUEST =
|
|
STANZA_ERROR('400', 'wait', 'unexpected-request');
|