1 Xmpp4Js.Lang.namespace( "Xmpp4Js.Packet" ); 2 3 /** 4 * Constructs a Presence packet if the Packet.Base constructor doesn't 5 * handle it. 6 * 7 * @param {Object} username 8 * @param {Object} password 9 * @param {Object} resource 10 * @constructor 11 * @extends Xmpp4Js.Packet.IQ 12 */ 13 Xmpp4Js.Packet.AuthPlainText = function( username, password, resource ) { 14 var doc = Xmpp4Js.Packet.getDocument(); 15 16 Xmpp4Js.Packet.AuthPlainText.superclass.constructor.call( this, null, "set", "jabber:iq:auth" ); 17 18 var query = this.getQuery(); 19 // FIXME see if Prototype can make this easier... 20 query.appendChild( doc.createElement( "username" ) ).appendChild( doc.createTextNode(username) ); 21 query.appendChild( doc.createElement( "password" ) ).appendChild( doc.createTextNode(password) ); 22 query.appendChild( doc.createElement( "resource" ) ).appendChild( doc.createTextNode(resource) ); 23 query.appendChild( doc.createElement( "plaintext" ) ); 24 } 25 26 Xmpp4Js.Packet.AuthPlainText.prototype = { 27 /** 28 * @deprecated see Xmpp4Js.Workflow.Login 29 */ 30 send : function( con ) { 31 this.setTo( con.domain ); 32 con.send( this, function( responseIq ) { 33 if( responseIq.getType() == 'error' ) { 34 con.fireEvent( "autherror" ); 35 } else { 36 //alert( "plaintext auth succes with packet, evens" ); 37 con.jid = responseIq.getTo(); 38 // FIXME this is legacy for JSJaC... onconnect should happen on connect 39 con.fireEvent( "onconnect" ); 40 con.fireEvent( "onauth" ); 41 } 42 } ); 43 } 44 } 45 46 Xmpp4Js.Lang.extend( Xmpp4Js.Packet.AuthPlainText, Xmpp4Js.Packet.IQ, Xmpp4Js.Packet.AuthPlainText.prototype); 47