Example #1
0
        /// <summary>
        ///     Saveds the search.
        /// </summary>
        internal void SavedSearch()
        {
            if (Session.GetHabbo().NavigatorLogs.Count > 50)
            {
                Session.SendNotif(Yupi.GetLanguage().GetVar("navigator_max"));
                return;
            }
            string        value1   = Request.GetString();
            string        value2   = Request.GetString();
            UserSearchLog naviLogs = new UserSearchLog(Session.GetHabbo().NavigatorLogs.Count, value1, value2);

            if (!Session.GetHabbo().NavigatorLogs.ContainsKey(naviLogs.Id))
            {
                Session.GetHabbo().NavigatorLogs.Add(naviLogs.Id, naviLogs);
            }
            ServerMessage message = new ServerMessage(LibraryParser.OutgoingRequest("NavigatorSavedSearchesComposer"));

            message.AppendInteger(Session.GetHabbo().NavigatorLogs.Count);
            foreach (UserSearchLog navi in Session.GetHabbo().NavigatorLogs.Values)
            {
                message.AppendInteger(navi.Id);
                message.AppendString(navi.Value1);
                message.AppendString(navi.Value2);
                message.AppendString("");
            }
            Session.SendMessage(message);
        }
        public override void HandleMessage(Yupi.Model.Domain.Habbo session, Yupi.Protocol.Buffers.ClientMessage request,
                                           Yupi.Protocol.IRouter router)
        {
            // TODO Refactor
            string value1 = request.GetString();

            string value2 = request.GetString();

            UserSearchLog naviLog = new UserSearchLog()
            {
                Value1 = value1,
                Value2 = value2
            };

            session.Info.NavigatorLog.Add(naviLog);

            UserRepository.Save(session.Info);

            router.GetComposer <NavigatorSavedSearchesComposer>().Compose(session, session.Info.NavigatorLog);
        }