public static int SendInvite(string EMail_target)
        {
            SendInviteCommand command = new SendInviteCommand();

            command.EMail = EMAIL;
            command.Hash  = HASH;

            command.EMail_Target = EMail_target;

            ResultWithNoData result = JsonConvert.DeserializeObject <ResultWithNoData>(TCPManager.SendRequest(JsonConvert.SerializeObject(command)));

            return(result.statusCode);
        }
Esempio n. 2
0
 public SetupViewModel(SyncClientSocket syncClientSocket, SyncServerSocket syncServerSocket)
 {
     isConnected              = false;
     SendInviteCommand        = new SendInviteCommand(this);
     StartServerCommand       = new StartServerCommand(this);
     ShowDialogBoxCommand     = new ShowDialogBoxCommand(this);
     ViewPreviousChatsCommand = new ViewPreviousChatsCommand(this);
     //OpenConversationsCommand           = new OpenConversationsCommand(this);
     PerformClientInitializationCommand = new PerformClientInitializationCommand(this);
     this.syncClientSocket = syncClientSocket;
     this.syncServerSocket = syncServerSocket;
     registerHandlers();
 }
        private static string SendInvite(string CommandPara)
        {
            SQLManager.Connection.Close();

            SendInviteCommand Command = new SendInviteCommand();
            ResultWithNoData  Result  = new ResultWithNoData();
            Random            rand    = new Random();
            int cid = 0;

            Command = JsonConvert.DeserializeObject <SendInviteCommand>(CommandPara);

            if (CheckUserData(Command.EMail, Command.Hash) == false)
            {
                Result.statusCode = 270;

                return(JsonConvert.SerializeObject(Result));
            }

            using (MySqlCommand mysqlCommand = SQLManager.Connection.CreateCommand())
            {
                SQLManager.Connection.Open();

                mysqlCommand.CommandText = "SELECT CID FROM classes WHERE Creator='" + Command.EMail + "'";

                MySqlDataReader mysqlreader;

                mysqlreader = mysqlCommand.ExecuteReader();

                if (mysqlreader.HasRows)
                {
                    mysqlreader.Read();

                    cid = mysqlreader.GetInt32("CID");
                }
                else
                {
                    mysqlreader.Close();
                    SQLManager.Connection.Close();
                    return(JsonConvert.SerializeObject(Result));
                }

                mysqlreader.Close();
                SQLManager.Connection.Close();
            }

            using (MySqlCommand mysqlCommand = SQLManager.Connection.CreateCommand())
            {
                mysqlCommand.CommandText = "SELECT EMail FROM users WHERE EMail='" + Command.EMail_Target + "'";

                SQLManager.Connection.Open();
                MySqlDataReader mysqlreader;

                mysqlreader = mysqlCommand.ExecuteReader();

                if (mysqlreader.HasRows)
                {
                    mysqlreader.Read();

                    string MySQL_EMail = mysqlreader.GetString("EMail");
                    if (MySQL_EMail.Equals(Command.EMail_Target, StringComparison.InvariantCultureIgnoreCase))
                    {
                        mysqlreader.Close();
                        SQLManager.Connection.Close();
                    }
                    else
                    {
                        mysqlreader.Close();
                        SQLManager.Connection.Close();
                        Result.statusCode = 202;
                        return(JsonConvert.SerializeObject(Result));
                    }
                }
                else
                {
                    mysqlreader.Close();
                    SQLManager.Connection.Close();
                    Result.statusCode = 202;
                    return(JsonConvert.SerializeObject(Result));
                }
            }

            int random = rand.Next(0, 999999);

            Mail_Server.sendClassInviteCode(random, Command.EMail_Target);

            InviteCodesSafe.addData(Command.EMail_Target, random, cid);

            Result.statusCode = 201;

            return(JsonConvert.SerializeObject(Result));
        }