Exemple #1
0
        /// <summary>
        /// List databases the user with given number is currently logged into.
        /// </summary>
        /// <param name="userNr">The user number (identifier) for the user in question</param>
        /// <returns>A JSON array string of the database names</returns>
        private String ListDatabaseLoggedInto(int userNr)
        {
            String result = "[";

            IEnumerator logins = root.Logins.GetEnumerator();

            while (logins.MoveNext())
            {
                dboLogin login = logins.Current as dboLogin;

                // Logged in, but no database open
                if (root.InstalledDbs[login.DbNr] == null)
                {
                    continue;
                }
                // Find/Add name of database opened
                else if (login.UserNr == userNr)
                {
                    result += "\"" + root.InstalledDbs[login.DbNr].ID + "\",";
                }
            }

            // Remove last comma and add missing bracket before return
            if (result.Length > 1)
            {
                result = result.Substring(0, result.Length - 1);
            }

            return(result + "]");
        }
Exemple #2
0
        /// <summary>
        /// Checks whether a given user in currently logged in
        /// </summary>
        /// <param name="root">Database access object</param>
        /// <param name="userNr">The user number (identifier) for the user in question</param>
        /// <returns>A specific string constant to indicate that the user is offline or
        /// the exact time point at which the user did log in.</returns>
        private String IsUserLoggedIn(int userNr)
        {
            IEnumerator logins = root.Logins.GetEnumerator();

            while (logins.MoveNext())
            {
                dboLogin login = logins.Current as dboLogin;
                if (login.UserNr == userNr)
                {
                    return(login.LoginTime.ToString());
                }
            }

            return(OFFLINE);
        }