Hi all,
Does anyone have a working example of auth.cfc (the file that gets
generated when using the CF Wizard? I thought the code below would be
sufficient but its still not working. Any suggestions?

CODE:

AUTH.CFC:
<cffunction name="login" access="remote" returntype="boolean">
<cfargument name="user" required="yes" />
<cfargument name="password" required="yes" />

<cfset var qRead="">

<cfquery name="qRead" datasource="tiomkin">
SELECT UserName, UserPassword
FROM USERS
WHERE UserName = <cfqueryparam cfsqltype="CF_SQL_VARCHAR"
value="#arguments.user#" />
AND UserPassword = <cfqueryparam cfsqltype="CF_SQL_VARCHAR"
value="#arguments.password#" />
</cfquery>

<cfif qRead.recordcount gt 0>
<cfreturn true>
<cfelse>
<cfreturn false>
</cfif>
</cffunction>

LOGIN.MXML:

<?xml version="1.0" encoding="utf-8"?>

<mx:Form xmlns:mx="http://www.adobe.com/2006/mxml"; xmlns="*"
width="100%" height="100%" creationComplete="initApp()">

<mx:Metadata>
[Event("forgotpassword")]
[Event("loginSuccessful")]
</mx:Metadata>

<mx:Script>
<![CDATA[
import mx.events.ValidationResultEvent;
import mx.rpc.events.ResultEvent;
import mx.rpc.events.FaultEvent;
import mx.utils.ObjectUtil;
import mx.controls.Alert;


private var lso:SharedObject;

private function initApp():void
{
this.lso = SharedObject.getLocal("auth");

if( this.lso.data['email'] != null )
{
this.user.text = this.lso.data['email'];
this.rememberLogin.selected = true;
}
if( this.lso.data['password'] != null )
{
this.password.text = this.lso.data['password'];
this.rememberLogin.selected = true;
}
}

private function isValid():Boolean
{
var pswdValidResult:ValidationResultEvent =
this.pswdValidate.validate(this.password.text);

if (pswdValidResult.type==ValidationResultEvent.VALID)
{
return true;
}
else
{
return false;
}

}


private function authenticateUser():void
{
if( isValid() )
{
authManager.login( this.user.text, this.password.text
);
}
}

private function errorMessage(msg:String):void
{
//Alert.show( ObjectUtil.toString(event.message) );
this.errorMsg.text = msg;
this.errorMsg.height = 15;
this.errorMsg.visible = true;
}

private function serverFault(event:FaultEvent):void
{
errorMessage(event.message['message']);
}



private function login_result(event:ResultEvent):void
{
// login successful, remember the user.
if( Boolean(event.result) )
{
if( this.rememberLogin.selected )
{
this.lso.data['user'] = this.user.text;
this.lso.data['password'] = this.password.text;
}
else
{
this.lso.data['user'] = null;
this.lso.data['password'] = null;
}

this.dispatchEvent( new Event('loginSuccessful') );
}
else
{
// login didn't work. show message
errorMessage("Login unsuccessful");
}
}
]]>
</mx:Script>

<mx:RemoteObject
id="authManager"
destination="ColdFusion"

source="Tiomkin.Tiomkin_Admin.components.cfgenerated.managers.Auth"
showBusyCursor="true">
<mx:method name="login" result="login_result(event)"
fault="serverFault(event)" />
</mx:RemoteObject>

<mx:StringValidator
id="pswdValidate"
source="{this.password}"
property="text"
required="true" />

<mx:Text id="errorMsg" visible="true"
color="red" width="100%" height="0" />


<mx:FormItem width="100%" label="UserName" required="true">
<mx:TextInput id="user"
width="175"/>
</mx:FormItem>
<mx:FormItem width="100%" label="Password" required="true">
<mx:TextInput id="password"
displayAsPassword="true"
width="175"/>
</mx:FormItem>
<mx:FormItem>
<mx:CheckBox id="rememberLogin"
label="Remember Login"
selected="false" />
</mx:FormItem>

<mx:VBox width="100%" horizontalAlign="right">
<mx:Button label="Login" click="authenticateUser();"/>
<mx:LinkButton label="Forgot Password?"
click="this.dispatchEvent(new Event('forgotpassword'));"
fontStyle="italic" width="150" textAlign="right"/>
</mx:VBox>

</mx:Form>

Thanks in advance,
David


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Introducing the Fusion Authority Quarterly Update. 80 pages of hard-hitting,
up-to-date ColdFusion information by your peers, delivered to your door four 
times a year.
http://www.fusionauthority.com/quarterly

Archive: 
http://www.houseoffusion.com/groups/CF-Talk/message.cfm/messageid:253222
Subscription: http://www.houseoffusion.com/groups/CF-Talk/subscribe.cfm
Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4

Reply via email to