private void Service_UserCreateCompleted(object sender, UserCreateCompletedEventArgs e)
        {
            LOLConnectClient service = (LOLConnectClient)sender;
            service.UserCreateCompleted -= Service_UserCreateCompleted;
            if (null == e.Error)
            {
                User createdUsr = e.Result;
                AccountOAuth accountAuth = (AccountOAuth)e.UserState;

                if (createdUsr.Errors.Count > 0)
                {

                    string errorMessage =
                        StringUtils.CreateErrorMessageFromGeneralErrors(createdUsr.Errors);
                    foreach (GeneralError eachError in createdUsr.Errors)
                    {
            #if(DEBUG)
                        System.Diagnostics.Debug.WriteLine("User error: {0}--{1}--{2}--{3}",
                                          eachError.ErrorTitle, eachError.ErrorDescription,
                                          eachError.ErrorLocation, eachError.ErrorNumber);
            #endif
                    }//end foreach

                    parent.RunOnUiThread(delegate
                    {
                        GeneralUtils.Alert(c, Application.Context.Resources.GetString(Resource.String.errorUserCreation), errorMessage, parent);
                    });

                } else
                {
                    AndroidData.CurrentUser = createdUsr;

                    service.UserLoginCompleted += Service_UserLoginCompleted;
                    service.UserLoginAsync(AndroidData.NewDeviceID,
                                               DeviceDeviceTypes.Android,
                                               LOLConstants.DefaultGuid,
                                               accountAuth.OAuthID,
                                               accountAuth.OAuthToken,
                                               accountAuth.OAuthType,
                                               AndroidData.CurrentUser.EmailAddress,
                                               string.Empty,
                                               new Guid(AndroidData.ServiceAuthToken));
                }//end if else
            } else
            {
                parent.RunOnUiThread(delegate
                {
                    GeneralUtils.Alert(c, Application.Context.Resources.GetString(Resource.String.errorUserCreation), string.Format("{0} {1}",
                        Application.Context.Resources.GetString(Resource.String.errorUserCreationFailed), e.Error.Message), parent);
                });
            }
        }
        private void Service_UserCreateCompleted(object sender, UserCreateCompletedEventArgs e)
        {
            LOLConnectClient service = (LOLConnectClient)sender;
            service.UserCreateCompleted -= Service_UserCreateCompleted;

            if (null == e.Error)
            {
                User createdUser = e.Result;
                if (createdUser.Errors.Count > 0)
                {
                    RunOnUiThread(delegate
                    {
                        if (progress != null)
                            progress.Dismiss();
                        GeneralUtils.Alert(context, Application.Context.Resources.GetString(Resource.String.commonError),
                                  Application.Context.Resources.GetString(Resource.String.errorDuplicateUser));
                        EnableAll();
                    });
                } else
                {
                    AndroidData.CurrentUser = createdUser;
                    service.UserLoginCompleted += Service_UserLoginCompleted;
                    service.UserLoginAsync(AndroidData.NewDeviceID,
                                           DeviceDeviceTypes.Android,
                                           AndroidData.CurrentUser.AccountID,
                                           string.Empty, string.Empty,
                                           AccountOAuth.OAuthTypes.LOL,
                                           email.Text,
                                           password.Text,
                                           new Guid(AndroidData.ServiceAuthToken));
                }//end if els
            } else
            {
                RunOnUiThread(delegate
                {
                    if (progress != null)
                        progress.Dismiss();
                    GeneralUtils.Alert(context, Application.Context.Resources.GetString(Resource.String.commonError),
                                e.Error.Message + " - " + e.Error.StackTrace);
                    EnableAll();
                });
            }//end if else
        }